Skip to content

Latest commit

 

History

History
68 lines (49 loc) · 4.56 KB

README.md

File metadata and controls

68 lines (49 loc) · 4.56 KB

Pandemic - Reign of Cthulhu

Battle eldritch horrors with your allies to avert cosmic chaos in the pandemic - reign of Cthulhu

Overview

This is an interactive web game that brings the board game with the same title to digital implementation in TypeScript and Python.

To understand the rule of the game, see the manual at here

The screenshot below shows current map, cards in the frontend application

Setup

See the documentation below to build both of the client and server applications

See REST API documentation to understand how client and server applications interact with each other.

License

GPL 3.0

Contribution

Follow the software engineering / development practices

Core maintainers initiated this game project with a strong emphasis on practicing the techniques below, all code contribtutors are required (and encouraged) to adhere to these good practices. If you don't know any of them, this is a good opportunity to learn with us.

Always test your code changes

If you are adding or modifying application-specific logic to the game, be sure to run test cases and linter for syntax check before submitting your code.

Discussion before making any change

Contributors are always encouraged to interact with the maintainers of this codebase, by starting a discussion in following places

  • GitHub Issue , for features, refactor, bugfix, build script, and minor changes like typo/error in the code and documentation.
  • GitHub Discussion , for architecture/design discussion, or questions about any technology / tool / 3rd-party library applied to the game.

Following the naming convention

Work with your development branch

After discussion, what you can do is to

  • create your development branch, with the naming convention described above
  • push commits / the code change to the branch
  • create a PR (pull request) if you are ready to merge your development branch into the main branch, there will be core maintainer(s) coming / reviewing your code change.

Remember to keep code change in your development branch small and manageable, to make reviewers' life easier ;)

Styling

Always run the linter in frontend / backend development environment, to ensure you code adheres to the required style.

Reference

  • Previous discussion on Miro (Chinese only)
  • Graphical Design and material on Fimga
  • Previous project management page on Notion (outdated)