Welcome to the Diplicity React project! This is a web version of the classic Diplomacy board game. This project is maintained voluntarily by members of the online Diplomacy board game community.
We are looking for developers to get involved with the project. If you want to contribute, come say hi on the Diplomacy Discord.
Diplicity React is a React-based web application which integrates with a Django REST API to manage game state, player actions, and other game-related functionalities.
- Live Deployment: Diplicity
Google sign in and other functionality will not work locally unless you have the required secrets. See the .env.example file for more information.
Developing using Docker is the recommended way to run the application.
Download and install Docker Desktop from here.
Open a terminal window and run the following command to build the entire project:
docker compose up service web db phase-resolverNote The terminal window will show logs from all of the containers which is useful for debugging.
The experience will now be available in your browser at http://localhost:5173/.
The Django backend includes a comprehensive test suite.
To run all backend tests:
docker compose run --rm service python3 -m pytest -vTo run a specific test file:
docker compose run --rm service python3 -m pytest game/tests/test_game_create.py -vTo run a specific test function:
docker compose run --rm service python3 -m pytest game/tests/test_game_create.py::test_create_game_success -v