Due to self-isolation we switched from weekly playing mafia (werewolf) game offline to online (via zoom). But we needed a card shuffle mechanics, so I wrote this one: https://mafia.brolia.com over weekend.
Source code on GitHub:
Back-end – https://github.com/taleodor/mafia-express
UI – https://github.com/taleodor/mafia-vue
Note that this assumes classic rules, namely only 4 roles: villager, mafia, godfather, sherrif. Sample rules could be found here.