Dipl.io
The modern, responsive Droidippy frontend for Diplomacy games
Install / Use
/learn @spamguy/Dipl.ioREADME
dipl.io 
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.
Goals
- The development process will be fully transparent. Improvements and new variants are welcome from the community.
- 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.)
- Integrate fully with the zond/diplicity backend.
- Rapid games (< 15 minutes per phase) will be possible without page refreshes.
How is this project different from spamguy/diplomacy?
The original project aimed to be an end-to-end solution using PostgreSQL + nginx + Redis + AngularJS. That's a lot of stuff to manage.
This project retains the front-end of the original and discards the back-end. By collaborating with the diplicity project, I can focus on delivering a quality user interface.
Technology
The application as a whole consists of two parts:
- The website. Developed using AngularJS.
- The backend, responsible for scheduling adjudication events and processing data. Sent to zond/diplicity through its API.
Setup
This assumes you have npm and bower working.
- Clone this repository.
- Clone the diplicity repository. Follow its setup and startup instructions.
- Run
npm install -g grunt-clianywhere. - Run
bower installin dipl.io's directory. - Run
npm installin dipl.io's directory. - OPTIONAL: Run
npm testorgrunt test(same thing). - Run
grunt serve.
If you have a web server on your machine already, set it up to serve the /client directory in this repository.
If you don't, nginx is recommended, though it takes some work. This will be touched upon in a wiki article.
Related Skills
node-connect
345.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
106.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
345.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
345.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
