Music discovery platform with community-contributed content warnings.
The comprehensive architecture documentation is located in the architecture/ directory.
- Architecture Overview - Complete system documentation
- Getting Started Guide - Goals and requirements
- Deployment Guide - Infrastructure and CI/CD
- Architectural Decisions - Key design decisions
- Technology Stack: React, TypeScript, Bun, SQLite, Kubernetes
- Architecture Pattern: Hexagonal architecture (ports & adapters)
- Infrastructure: Kubernetes, Docker, Cloudflare (DNS + CDN)
- CI/CD: GitHub Actions (build) + ArgoCD (deployment)
- Security: Auth0 authentication, Cloudflare Turnstile bot protection
- Compliance: GDPR, German TMG, EU E-Commerce Directive
cd frontend
npm install
npm run devOpens on http://localhost:5173
cd backend
bun install
bun devRuns on http://localhost:3000
- Frontend README:
frontend/README.md - Backend README:
backend/README.md - Architecture Docs:
architecture/README.md
bandcheck/
├── architecture/ # Complete architecture documentation (AsciiDoc)
├── backend/ # Backend API (Bun + TypeScript)
│ ├── src/
│ │ ├── core/ # Business logic (hexagonal architecture)
│ │ ├── adapters/ # HTTP, database adapters
│ │ └── db/ # Database schema
│ └── k8s/ # Kubernetes manifests
├── frontend/ # Frontend SPA (React + TypeScript)
│ ├── src/
│ │ ├── pages/ # Page components
│ │ ├── components/ # Reusable components
│ │ └── services/ # API client
│ └── k8s/ # Kubernetes manifests
└── infrastructure/ # Terraform configuration
This is an open-source, non-profit project. Contributions are welcome!
- Read the architecture documentation
- Check the hexagonal architecture guide
- Follow TypeScript best practices
- Write tests for new features
- Submit a pull request
See LICENSE file for details.
- Auth0: Authentication provider
- Cloudflare Turnstile: Bot protection
- Kubernetes (K3s): Container orchestration
- Drizzle ORM: Type-safe database access