SnapLink: URL Shortener with Analytics and AI Insights

Over nine phases you build SnapLink like a professional team: requirements, design, a test-first implementation, CI/CD with GitHub Actions, Docker, optional free-tier deployment, observability and a retrospective. Pick Java, Python or TypeScript; the spec, database and tests are shared. Everything runs on your laptop, and the AI feature works offline.

beginnerJavaPythonTypeScriptSpring BootFastAPIFastifyPostgreSQLRedisDockerGitHub ActionsOpenAPI

What you will build, step by step

  1. Phase 0 · Setup and orientation
  2. Phase 1 · Requirements and user stories
  3. Phase 2 · Design: architecture, database schema, API contract
  4. Phase 3 · Implementation in five milestones
  5. Phase 4 · Testing: integration tests, failure tests and a coverage gate
  6. Phase 5 · Continuous integration with GitHub Actions
  7. Phase 6 · Containerise, deliver and (optionally) deploy
  8. Phase 7 · Observability and maintenance (v1.1.0)
  9. Phase 8 · Retrospective and portfolio