Web application with online games for two players. Click here to preview.
- Flask
- PyGame
- Phaser
- Bootstrap
- Socket.IO
- JQuery
- Celery
- Redis
- RedisJSON
- RediSearch
- Redis Pub/Sub
- Redis-OM
- Docker
- Turn-based game - Tic Tac Toe
- Fast-paced game - Pong
- Client-side prediction
- Server state reconciliation
- Linear move interpolation
- Creating new room
- Room chat
- Spectating room
- Searching for rooms
- Paggination
Default config for Pong: 40 ticks server / 15 ticks client input
git clone https://github.com/dominikjalowiecki/Online-Games.git
cd ./Online-Games
make
FLASK_APP=app
FLASK_DEBUG=True
SECRET_KEY=secret_phrase
SERVER_PORT=5000
SESSION_REDIS=<redis-url>
SOCKETIO_REDIS_CHANNEL='online-games-socketio'
REDIS_MESSAGE_QUEUE_URL=<redis-url>
REDIS_OM_URL=<redis-url>
LOG_FILE=logs/record.log
REDIS_CELERY_URL=<redis-url>
SOCKETIO_REDIS_CHANNEL='online-games-socketio'
REDIS_MESSAGE_QUEUE_URL=<redis-url>
python -m whitenoise.compress ./app/static
make run
make start
Application available on http://localhost:5000