Unified repository containing the Jumbo React front end and Django REST API. Use this codebase to explore the project locally or as a starting point for your own deployment.
Super Jumbo / Wager Town is a sports prediction game for groups. It supports picks, leaderboards, and paid entries (Stripe) with optional web push notifications.
- create prediction games and props
- invite friends, track picks, and score results
- payments via Stripe (optional)
- web push notifications (optional)
| Layer | Tech |
|---|---|
| Web | React + TypeScript + Webpack |
| API | Django + Django REST Framework |
| Jobs | Celery + Redis |
apps/server– Django API, Celery worker definitions, Procfile.apps/web– React/TypeScript client and shared core package.LICENSE– MIT license for open-source use.
- Python 3.8+ (Django 2.2 is tested up to 3.8)
- Node 16 (webpack 4/React 16 toolchain)
- Redis (optional, only for Celery tasks)
Open two terminals from the repo root.
cd apps/server
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # edit values as needed
python manage.py migrate
python manage.py runserverThe API listens on http://127.0.0.1:8000 with routes under /api.
cd apps/web
npm install
npm startThe dev server runs at http://127.0.0.1:8080 and calls the API at http://127.0.0.1:8000/api by default.
- Server: driven by environment variables (
apps/server/.env.examplelists all options). Provide your ownDJANGO_SECRET_KEY, Stripe keys, VAPID keys, and Redis URL as needed. - Web: runtime config is read from
window.__JUMBO_CONFIG__defined inapps/web/jumbo/index.htmlor from build-time env vars (API_ROOT,STRIPE_PUBLIC_KEY,VAPID_PUBLIC_KEY).
- Server:
cd apps/server && python manage.py test - Web:
cd apps/web && npm test(Jest) ornpm run test:e2e(Cypress)
This repo is framework-agnostic. For Heroku-like deploys, use the Procfile in apps/server and supply env vars. The web app builds to apps/web/dist via npm run build; serve the static bundle from any CDN or static host.
All previously hard-coded secrets and service-account files were removed. Generate your own keys before deploying anything beyond local development.
