VVyshyvka
studio

Case study

Chamber Music OS

A Cloudflare-native cultural platform that combines a public chamber-music site with protected patron, staff, content, ticketing, archive, and AI/data workflows.

Capabilities
Design, Frontend, Backend, DBA, DevOps, AI Workflows
Type
Cultural product system
Stack
Next.js, React, TypeScript, Drizzle ORM, Cloudflare
Scope
Public site, Staff tools, Archives, AI workflows
Year
2026

Product inventory

Recorded scope across routes, data models, interface screens, and workflow code.

Page routes
67
Schema files
63
Drizzle tables
88
Pipeline files
338
API routes
6
Public assets
84

Project overview

A Cloudflare-native cultural platform that combines a public chamber-music site with protected patron, staff, content, ticketing, archive, and AI/data workflows.

The same chamber-music records must serve a patron choosing a concert, a staff member building a campaign, and an archive visitor browsing decades of programming. Internal workflows also connect tickets, patrons, venues, repertoire, program notes, and media.

What was built

One concert record can support public listings, staff campaigns, repertoire history, program notes, and archive browsing.

Public cultural site

Public routes present concerts, season, repertoire, composers, ensembles, program notes, visit information, support, donations, and institutional pages.

Relational domain model

Drizzle schemas model artistic, archival, patron, ticketing, campaign, document, and operational entities as connected records.

Staff operations workspace

Protected staff modules manage campaigns, content, patrons, messages, email, box office, social ads, and concert building.

AI and archive pipelines

Program archive extraction, composer and performer generation, repertoire research, concert generation, artwork selection, validation, review gates, and approved writes support archive repair and content production.

Media and documents

R2-backed archive assets and previews.

AI review pipelines

Archive extraction, generation, audits, approval gates.

Selected details

Implementation details from the product, data, workflow, and infrastructure layers.

  • 01

    Public routes cover concerts, composers, ensembles, repertoire, program notes, seasons, and discovery.

  • 02

    Ticketing foundations model inventory, orders, holds, issued tickets, signed QR payloads, scan events, refunds, and transfers.

  • 03

    Program archive extraction creates reviewable JSON/CSV artifacts, page manifests, rendered-page queues, issue lists, audit workbooks, vision packets, and import-ready concert-generation inputs.

  • 04

    Generation pipelines handle source research, draft records, media and artwork selection, quality audits, human review gates, and approved database writes for composers, performers, pieces, repertoire, and concerts.

  • 05

    Pipeline sessions persist status, phase progress, artifact paths, manifests, errors, costs, resume counts, and summaries.

  • 06

    Media serving supports local development storage and Cloudflare R2-backed production storage.

  • 07

    The application model also covers locale routing, security middleware, NextAuth sessions, and Cloudflare deployment infrastructure.

Systems overview

How the public pages, staff workflows, data, review steps, and infrastructure connect.

Public website

Concerts, seasons, profiles, giving.

Data model

Records, relationships, translations.

Staff tools

Review, repair, publishing, operations.

Media and documents

R2-backed archive assets and previews.

AI review pipelines

Archive extraction, generation, audits, approval gates.

Technology

Languages, frameworks, data stores, and infrastructure.

Next.js
React
TypeScript
Tailwind CSS
Drizzle ORM
Cloudflare Workers
Cloudflare D1
Cloudflare R2
NextAuth

Design language

The implemented CPM interface uses full-field brand colour, League Spartan as the workhorse UI face, Baskervville for editorial passages, thin teal rules, search/filter controls, archive cards, and staff review states.

Philosophy

Editorial chamber-music minimalism

The interface treats CPM as both a cultural publisher and a working institution: expressive for public discovery, restrained for archive records, patrons, and staff operations.

Full-field colourThin rules before boxesArchive records feel publicStaff tools stay calm
Aa
League SpartanUI, headlines, labelsBaskervvilleEditorial intros and cardsFira CodeIDs, logs, diagnostics
Teal#0e5b64
Pink#ecb7cf
Yellow#ffd440
Red#ee4628
Green#a7d7b6

Selected screens

More screens showing the product in use.