https://github.com/noahspott/thecoverbandscene
API-driven backend for cover bands to manage events, availability, and calendars. FastAPI, SQLModel, Alembic, PostgreSQL.
https://github.com/noahspott/thecoverbandscene
alembic docker fastapi postgresql sqlmodel
Last synced: about 2 months ago
JSON representation
API-driven backend for cover bands to manage events, availability, and calendars. FastAPI, SQLModel, Alembic, PostgreSQL.
- Host: GitHub
- URL: https://github.com/noahspott/thecoverbandscene
- Owner: noahspott
- Created: 2026-02-10T09:34:39.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-03-09T13:26:03.000Z (3 months ago)
- Last Synced: 2026-03-09T18:10:58.938Z (3 months ago)
- Topics: alembic, docker, fastapi, postgresql, sqlmodel
- Language: Python
- Homepage:
- Size: 402 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The Cover Band Scene
## Problem
There is a rich community of cover music performers, venues, and music lovers in the Mid-Atlantic region, but there's no central home to quickly and easily find "who's playing in Atlantic City this weekend", "who's playing at Parx Casino tonight?", or "what time do The Benderz play tomorrow?".
## MVP
### Overview
Summit Avenue currently manages multiple performer websites via unique CMS accounts, causing venue data duplication. The goal of the MVP is to create the system that replaces the unique CMS accounts with one centralized system. This system will be the foundation of The Cover Band Scene system.
### Data Model

### Requirements
#### Functional Requirements
##### Auth Features
FR-01: The system shall provide secure authentication for the admin
FR-02: The system shall provide secure authentication for clients
FR-03: The system shall restrict client read access to specific resources determined by the admin
##### Admin Features
FR-04: The system shall allow the admin to delegate resource access.
FR-05: The system shall allow the admin to create, read, update, and delete any band, venue, or event.
FR-06: The system shall allow the admin to bulk add events via JSON or CSV.
FR-07: The system shall validate required fields and show errors if missing or invalid.
FR-08: The system shall check for and prevent duplicate bands, venues, or events.
##### Authorized Client Features
FR-09: The system shall support pagination for events.
FR-10: The system shall support event filtering by start date and end date.
#### Non-functional Requirements
NFR-01: The API shall respond to read requests with a p95 latency of ≤ 200 ms.
NFR-02: The API shall maintain ≥ 99.5% uptime for read endpoints.
NFR-03: All communication shall occur over HTTPS.
NFR-04: Public read endpoints shall support caching and pagination.
NFR-05: Admin and client access shall be authenticated and authorized.
NFR-06: The system shall expose metrics for latency, error rate, and availability.