Skip to main content

Websocket server to interactively play the Apologies game

Project description

Apologies Server

pypi license wheel python Test Suite docs coverage

Apologies Server is a Websocket server interface used to interactively play a multi-player game using the Apologies library. The Apologies library implements a game similar to the Sorry board game.

It was written as a learning exercise and technology demonstration effort, and serves as a complete example of how to manage a modern (circa 2020) Python project, including style checks, code formatting, integration with IntelliJ, CI builds at GitHub, and integration with PyPI and Read the Docs.

See the documentation for notes about the public interface and the event model.

As of this writing, the published PyPI project does not include a script to run the server. The only way to run it is from the codebase, for local testing. See the developer documentation at GitHub for more information.

As a technology demonstration effort, the Apologies Server is fairly simplistic. It runs as a single stateful process that maintains game state in memory. It cannot be horizontally scaled, and there is no option for an external data store. There is also only limited support for authentication and authorization - any player can register any handle that is not currently being used. We do enforce resource limits (open connections, registered users, in-progress games) to limit the amount of damage abusive clients can do.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apologiesserver-0.1.20.tar.gz (86.9 kB view hashes)

Uploaded Source

Built Distribution

apologiesserver-0.1.20-py3-none-any.whl (48.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page