dipl.io website | dipl.io blog
Diplomacy is a Risk-like board game with a strong Internet fan base. Many browser-based clients exist, but none have quite the flexibility of the play-by-email servers they intended to replace. The dipl.io project seeks to be as full-featured as possible and take full advantage of the modern web browser's abilities.
- The development process will be fully transparent. Custom map and ruleset creation should be simple but flexible.
- The user interface will be responsive and fun.
- The project will bring together the best characteristics of previous Diplomacy implementations.
- The project will be fully unit-tested. (This is for my own good and reparations against many years of crimes against testability.)
- The project will keep the good, dedicated players in and the lame quitters out.
- Rapid games (< 15 minutes per phase) will be possible without page refreshes.
The application as a whole consists of three parts:
- The website. Developed using AngularJS and PostgreSQL.
- The adjudicator, responsible for taking a set of moves and resolving them. Adapted from zond/godip and interpreted into JavaScript.
- The server, responsible for scheduling adjudication events and dispensing the website. Developed with NodeJS/Express.