This is an online multiplayer take on the classic party game Mafia. The game splits players into civilians and mafia members. The goal of the game is simple, kill the opposing team. The full ruleset can be found here. However, since this is an OSS project, developers are free to edit rules and add new functionality as they please.
Please review the documentation for guidelines and information about the software.
- Note: An in-depth guide is available on our Wiki's Getting Started page. A condensed version is as follows:
Before you install and get started with this project, please ensure that you have installed nodejs and npm on your computer.
This project uses the package manager npm to install all dependencies.
First, clone the repository and open the project directory:
git clone git@github.com:Mafia-Hands/Mafia.git
cd Mafia
To run this application locally, the frontend and backend must run together. You can do it like so:
Frontend:
cd frontend
npm install
npm start
Backend:
cd backend
npm install
npm start
Note: You do not need to run npm install
everytime. Only when a new package is added.
Note: Ensure that the socket.js
file (frontend > src > socket.js) points to your local server by uncommenting the necessary line.
For development purposes, you can run the application locally by following the Installation Instructions.
If you would like to play the game, follow our guide on how to Get Started. If you don't know how to play Mafia, you can also read the Rules of the game!
If you encounter any issues regarding this project, please create a Github Issue using the relevant template. You can also tag a specific contributor if you feel like they might be able to help you out.
Outstanding issues and requests can be tracked and visualised on our Github Projects page.
If you would like to contribute to this project, please make sure to follow our Contributing Guidelines.
This project was coordinated by and for the University of Auckland course SOFTENG 701.
Thanks to:
- University of Auckland - for providing the opportunity to work on and create this project
- Dr Kelly Blincoe - for assistance with the development of this project
Also, special thanks to the members of Team 4 (Mafia Hands) for their hard work and dedication towards this project. A detailed list of their contributions can be found here.
Thanks to Team 3 (3Lancers) too, for all the extra work they've done.
- The original developers of this project have now concluded their involvement.
- Similarly Team 3 has overhauled the design and added extra features and have also concluded their involvement.
- We welcome any and all contributions! For a list of suggested additions to this app, take a look at the Future Works page on our Wiki.
Please ensure all code of conduct is followed.
Licensed under the Apache License 2.0 license