Skip to content

jmoore34/RoleAssigner

Repository files navigation

RoleAssigner

jmoore34 - RoleAssigner Made with React

What is it?

RoleAssigner is a web app for anonymously divvying up roles in a chat-room like interface.

Background

Role-based social deduction card games such as Mafia are generally difficult to play online because they necessitate anonymous assignment of roles as well as covert intra-team communicaton. Role assigner provides a free solutuion that addresses both these problems.

How to use

  1. Create or join a room

image

You can also share a room by copying the URL.

  1. Collaboratively set up the roles, or use a preset. Multiple users can edit the roles at the same time (like in Google Docs), and the input is debounced to reduce stress on the server.

image

  1. Set your name, and optionally opt-in to become a moderator

Moderators do not recieve roles, and only moderators can see the roles of everyone else.

image

  1. Press "Assign roles to users", and everyone (except moderators) will anonymously recieve a role.

image

  1. Use the special chat functions, such as anonymous chat, team chat, moderator-directed chat, and more.

image

image

Technical details

RoleAssigner was developed by Jonathan Moore and Christopher Sweetman. The websocket backend was developed in Kotlin using the Ktor web framework, and the frontend was written in TypeScript using React, styled-components, and Material UI.