Julian Tabel c9b09b8250
All checks were successful
CI / backend-tests (push) Successful in 30s
CI / frontend-tests (push) Successful in 30s
fix: fix supabase auth url
2026-03-22 12:10:03 +01:00
2026-03-22 12:10:03 +01:00
2026-03-20 22:13:01 +01:00
2026-03-20 21:42:52 +01:00
2026-03-20 22:11:39 +01:00
2026-03-20 16:31:19 +01:00

ANT - Another Nuzlocke Tracker

A full-stack Nuzlocke run tracker for Pokemon games.

Getting Started for now

Prerequisites

  • Docker & Docker Compose

Start the Stack

docker compose up

This starts four services:

Service URL
Frontend http://localhost:5173
API http://localhost:8080
API Docs http://localhost:8080/docs
GoTrue http://localhost:9999
PostgreSQL localhost:5432

Local Authentication

The stack includes a local GoTrue container for auth testing. Email/password signup and login work out of the box with auto-confirmation (no email verification needed).

OAuth providers (Google, Discord) are disabled in local dev. The login/signup pages show OAuth buttons as disabled with a tooltip explaining this. For OAuth testing, deploy to an environment with Supabase cloud configured.

The local JWT secret and anon key are pre-configured in .env.example and docker-compose.yml. Copy .env.example to .env before starting:

cp .env.example .env
docker compose up

Run Migrations

docker compose exec api alembic -c /app/alembic.ini upgrade head

Seed the Database

The seeder reads from pre-generated JSON files in backend/src/app/seeds/data/ (committed to the repo) and loads them into PostgreSQL. No external API access is needed — everything runs from local files inside the container.

docker compose exec api python -m app.seeds

To seed and verify the data was loaded correctly:

docker compose exec api python -m app.seeds --verify

This loads game data, Pokemon, routes, and encounter tables for FireRed, LeafGreen, Emerald, HeartGold, and SoulSilver.

Regenerating Seed Data

The seed JSON files don't normally need regenerating. If you need to update them (e.g., to pull in new game data), run the import tool from the repo root:

python -m import_pokedb

It auto-downloads PokeDB data on the first run. Options:

# Generate data for a specific game only
python -m import_pokedb --game firered

# Use a custom PokeDB data directory
python -m import_pokedb --pokedb-dir ~/my-pokedb-data/

# Write output to a different directory
python -m import_pokedb --output /tmp/seed-output/

Review and commit the updated JSON files in backend/src/app/seeds/data/.

Description
No description provided
Readme 93 MiB
Languages
TypeScript 51.7%
Python 47.3%
Shell 0.5%
CSS 0.3%
HTML 0.1%