- Remove dead frontend/src/features/index.ts (empty export, unused)
- RaceRow: created_at/updated_at typed as Date to match pg TIMESTAMPTZ runtime
- rowToDto: explicit toISOString() conversion instead of relying on JSON.stringify
- Mock DB: return Date objects for timestamp fields to match real pg behavior
Made-with: Cursor
Express + TypeScript backend with PostgreSQL: CRUD endpoints for /races (GET list with year/month filters, GET by id, POST, PATCH, DELETE), health/readiness probes, SQL migration runner, seed script with upsert from CSV, camelCase/snake_case mapper, CORS, env validation, docker-compose, and API docs for frontend.
Made-with: Cursor