← Back to system Pokédex Manager

Pokédex Manager / Compose to bring it up and a quality chain that does not skip persistence.

Operations

Docker Compose brings up MongoDB and the application; the container initializes indexes before the server, and an incompatible index contract blocks startup instead of running against an ambiguous database. GitHub Actions runs a dependency audit, lint, formatting, types, integration tests against a real MongoDB, and the build.

01Input

Docker Compose brings up MongoDB and the application with local development values.

02Process

The container initializes and verifies the indexes before starting the server.

03Outcome

GitHub Actions runs the audit, lint, formatting, types, tests, and build on every push.

How I built it

Initialization is idempotent: it creates or verifies indexes, deletes no documents, and fails if an existing index contradicts the expected contract, so nothing starts against an ambiguous database. Integration tests run against a real MongoDB, because per-account isolation and unique indexes are exactly what a test double does not check.