Skip to content

Latest commit

 

History

History
127 lines (92 loc) · 6.93 KB

File metadata and controls

127 lines (92 loc) · 6.93 KB

Documentation

Organized documentation for the Cambridge Beer Festival app.

📁 Structure

📘 code/ - Current Code Documentation

How the codebase works -- implementation guides, architecture, and technical references.

📐 adr/ - Architecture Decision Records

Key decisions with context, alternatives considered, and consequences.

  • 0001 - GitHub Actions Caching Strategy
  • 0002 - Composite Actions and Test Deduplication
  • 0003 - Parallel Build Strategy for Android Releases
  • 0004 - Path-Based URL Strategy for Deep Linking
  • 0005 - E2E Testing Strategy (Playwright for URL smoke tests)
  • 0006 - The Check-in as the Primary My Festival Entity

🔄 processes/ - Development & Operational Processes

🛠️ tooling/ - Setup & Configuration Guides

📋 planning/ - Active Proposals

  • my-festival/ - "My Festival" personal companion feature (product vision; implementation tracked in GitHub issues)
  • rating-service/ - Community ratings backend design (Cloudflare Worker + D1)

🗄️ planning/archive/ - Historical Records

Completed or superseded planning documents retained for context:

  • archive/deep-linking/ - Deep linking design, implementation plans, and reviews (Phase 1 complete, decisions captured in ADR 0004)
  • archive/patrol-firebase-testing/ - Patrol + Firebase Test Lab evaluation (not implemented, decision captured in ADR 0005)
  • archive/ci-review/ - CI/CD review and optimisations (implemented, decisions captured in ADRs 0001-0003)

📋 Project Tracking

Bugs, features, and tasks are tracked in GitHub Issues. The legacy todos.md is archived and kept for historical reference only.

🔍 Quick Reference

I want to...

Understand the codebase:

Understand a past decision:

  • Why is a check-in (a drink or non-drink entry) the primary My Festival entity? → ADR 0006
  • Why path-based URLs? → ADR 0004
  • Why Playwright for E2E? → ADR 0005
  • Why cache pub/npm but not build artifacts? → ADR 0001

Set up development tools:

Follow a process:

Plan future work:

🤝 Contributing to Docs

  1. Choose the right category:

    • Documenting existing code? → code/
    • Recording a decision? → adr/ (use next sequential number)
    • Describing a process? → processes/
    • Writing a setup guide? → tooling/
    • Proposing future work? → planning/
  2. Use clear, descriptive filenames (lowercase, kebab-case)

  3. Update this README when adding new documents

  4. Completed planning docs should be archived to planning/archive/ with decisions extracted into ADRs

📚 Related Documentation


Last Updated: July 2026