A website to upload and share your Hearthstone games.
The full backend stack is written in Python 3.
- Web framework: Django
- Replay viewer: Joust
- HSReplay implementation: HSReplay
- Hearthstone library: python-hearthstone
- API: Django REST Framework
- Authentication: Django Allauth
- Storage backends: Django-Storages
- Short IDs: ShortUUID
- Accounts: Battle.net API
- Web server: nginx
- App server: uWSGI
- Database: PostgreSQL (RDS)
- Hosting: Amazon Web Services
- Analytics: InfluxDB
- Exception tracking: Sentry
- CI: Jenkins
Replays are processed on Amazon Lambda using the Python 2.7 runtime.
Install development dependencies with pip install -r requirements/dev.txt
.
Settings are present in the hsreplaynet/settings.py
file. You may copy the
local_settings.example.py
file to hsreplaynet/local_settings.py
to
customize settings without modifying the versioned file. This is especially
useful to store sensitive settings such as API keys.
Several settings such as Sentry, Influx and S3 are disabled by default. The
default database engine is set to sqlite3.
Run the dev server with ./manage.py runserver [host:port]
. Will run on
localhost:8000
by default.
The API is available at /api/v1/
and is browsable using the DRF interface.
Copyright © HearthSim - All Rights Reserved