Files
nuzlocke-tracker/backend
Julian Tabel 000658b4cd Remove stale duplicate routes and fix ordering in seed data
The DB accumulated stale routes from previous imports with different
naming (e.g. "Route 1" alongside "Alola Route 1"). These were exported
back to JSON, causing duplicate entries with conflicting order values.

Removed 597 stale routes across 17 game files and re-sorted all 22
game files to match the canonical progression in route_order.json.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 08:41:48 +01:00
..

Nuzlocke Tracker API

Backend API for the Nuzlocke Tracker application, built with FastAPI.

Development Setup

From the project root:

docker compose up

This starts the API, frontend, and PostgreSQL database with hot reload enabled.

Option 2: Local Setup

  1. Create and activate virtual environment:

    python -m venv .venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    
  2. Install dependencies:

    pip install -e ".[dev]"
    
  3. Copy environment file:

    cp .env.example .env
    
  4. Run the development server:

    uvicorn app.main:app --reload --app-dir src
    

The API will be available at http://localhost:8000

API Documentation

Project Structure

backend/
├── src/
│   └── app/
│       ├── api/          # API routes
│       ├── core/         # Core configuration
│       ├── models/       # Database models
│       ├── schemas/      # Pydantic schemas
│       └── services/     # Business logic
├── tests/                # Test files
├── pyproject.toml        # Project configuration
└── .env.example          # Example environment variables

Linting & Formatting

ruff check .        # Check for issues
ruff check . --fix  # Fix auto-fixable issues
ruff format .       # Format code