VVyshyvka
studio

Case study

Artist Platform

An anonymized platform for a solo classical artist: editorial site, structured performance archive, project dossiers, media and press pages, private desk workflows, import tooling, and Cloudflare deployment infrastructure.

Capabilities
Design, Frontend, Backend, DBA, DevOps, Media Infrastructure
Type
Cultural platform and operations desk
Stack
Next.js, TypeScript, Drizzle ORM, D1, R2
Scope
Editorial site, Private desk, Archive model, Media delivery
Year
2026

Product inventory

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

Page routes
34
Schema tables
40
Locales
11
Test files
14
Scripts
7

Project overview

An anonymized platform for a solo classical artist: editorial site, structured performance archive, project dossiers, media and press pages, private desk workflows, import tooling, and Cloudflare deployment infrastructure.

The platform must manage changing performance data, long-lived repertoire, project dossiers, press materials, recordings, writing, artwork, presenter resources, private review, and future publishing workflows without exposing operational details on the public artist site.

What was built

The public site reads from performance, repertoire, media, and press records maintained through a private editorial desk.

Public cultural site

Locale-aware public pages for calendar, archive, projects, listening, media, press, biography, contact, legal, and news content.

Private operating desk

Protected desk routes for calendar, projects, media, press, campaigns, settings, next actions, and project health.

Structured archive model

Drizzle/D1 schema for profile, performances, works, projects, media, press, subscribers, campaigns, imports, normalization, and audit logs.

Calendar operations

Import, enrichment, repair, normalization, recovery, filters, and audit scripts keep performance data maintainable.

Media infrastructure

R2-backed serving, path normalization, range requests, content types, and cache headers support cultural media.

Approval-gated broadcast scaffolding

Provider adapters and publish-attempt records capture review, approval state, and logged publishing attempts.

Selected details

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

  • 01

    The visible navigation keeps public routes separate from private desk routes.

  • 02

    R2 media serving includes path normalization, range requests, content types, and cache headers.

  • 03

    Calendar import, repair, normalization, recovery, and audit scripts support structured maintenance.

  • 04

    Automation adapters keep provider selection, publish attempts, approval state, and audit history connected.

  • 05

    Calendar source entries, normalization runs, performance sources, import batches, publish attempts, and audit logs support provenance and review.

  • 06

    Editorial routes connect biography, repertoire, press, media, projects, calendar, and guided-listening pages.

  • 07

    Private desk workflows support parsing, normalization, recovery, audit, and approval paths for maintained cultural records.

Systems overview

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

Public site

Editorial routes, calendar, archive, media.

Private desk

Projects, press, campaigns, settings.

Content model

Performances, works, media, press records.

Media delivery

R2-backed serving and cache behaviour.

Import scripts

Calendar import, normalization, recovery.

Technology

Languages, frameworks, data stores, and infrastructure.

Next.js
React
TypeScript
Drizzle ORM
SQLite
Cloudflare D1
Cloudflare Workers
OpenNext
Cloudflare R2
Vitest

Design language

Warm paper fields, serif-led hierarchy, score-like textures, compact uppercase metadata, and rust accents define the public archive; private-desk panels become denser for maintenance work.

Philosophy

A living archive before a promo site

A private desk maintains performances, repertoire, media, press, and projects as cultural records for the public editorial site.

Source-aware calendarGuided listening roomsProject dossiersApproval-gated publishing
Aa
Editorial serif, compact UI sans, Fira CodeArchive pages, metadata, import logs
Ink#25211d
Paper#f7f0e7
Rust#a65336
Moss#4f6047
Rule#d9cbbb

Selected screens

More screens showing the product in use.