--- # nuzlocke-tracker-l7e3 title: Database Schema Design status: todo type: task priority: normal created_at: 2026-02-04T15:46:54Z updated_at: 2026-02-04T15:47:23Z parent: nuzlocke-tracker-f5ob blocking: - nuzlocke-tracker-bkhs - nuzlocke-tracker-k5lm - nuzlocke-tracker-hy41 --- Design and implement the database schema for persistent storage. ## Checklist - [ ] Choose database (PostgreSQL, SQLite, MongoDB, etc.) - [ ] Set up database connection and ORM/query builder - [ ] Design and create tables/collections: - [ ] Games (id, name, generation, region) - [ ] Routes (id, name, game_id, order, encounter_method) - [ ] Pokemon (national_dex, name, types, sprite_url) - [ ] RouteEncounters (route_id, pokemon_id, encounter_rate) - [ ] NuzlockeRuns (id, game_id, settings, started_at, status) - [ ] Encounters (id, run_id, route_id, pokemon_id, nickname, status, caught_at) - [ ] Set up migrations system - [ ] Add seed data for initial games/routes/Pokémon - [ ] Create indexes for common queries ## Notes - Consider SQLite for simplicity in MVP, can migrate later - Use foreign keys for referential integrity - Status fields should be enums