| title | ConQuest |
|---|---|
| description | Multiplayer scavenger hunt and quest platform built with Django, Channels, and HTMX. |
ConQuest is a Django-based web app for creating seasons, publishing quests, submitting proof, moderating entries, and ranking players on a live leaderboard. It uses server-rendered templates with HTMX for fast interactions and Channels for real-time updates.
- Python and Django
- Django Channels with Redis
- HTMX and Django templates
- SQLite for local development
- Playwright and pytest for testing
- Create and activate a virtual environment.
- Install dependencies.
- Run migrations.
- Start the app.
python -m venv .venv
source .venv/bin/activate
pip install -r requirements/dev.txt
python manage.py migrate
python manage.py runserverCreate a .env file in the repository root and set values you need for local development.
DJANGO_SECRET_KEY=change-me
DJANGO_DEBUG=1
DJANGO_ALLOWED_HOSTS=*
REDIS_URL=redis://127.0.0.1:6379/0Run the full test suite with:
pytestRun Playwright tests with:
npx playwright testapps/contains domain apps like quests, submissions, moderation, seasons, and leaderboardcon_quest/contains project settings, routing, and ASGI/WSGI entrypointstemplates/contains server-rendered HTML templatestests/contains integration and end-to-end test coverage
This project is licensed under the MIT License. See the LICENSE file for details.