6 Home
jlightner edited this page 2026-04-04 10:31:50 -05:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Chrysopedia

Knowledge base for music production techniques, extracted from video content via an LLM-powered pipeline.

Producers can search for specific techniques and find timestamped key moments, signal chains, and synthesized study guides — all derived from creator videos.

  • Architecture — System architecture, Docker services, network topology
  • Data-Model — SQLAlchemy models, relationships, enums
  • API-Surface — All 80+ API endpoints grouped by domain
  • Frontend — Routes, components, hooks, CSS architecture
  • Pipeline — 6-stage LLM extraction pipeline, prompt system
  • Chat-Engine — Streaming Q&A with multi-turn memory
  • Highlights — 10-dimension highlight detection and review queue
  • Personality-Profiles — LLM-extracted creator teaching personality
  • Search-Retrieval — LightRAG + Qdrant retrieval cascade
  • Deployment — Docker Compose setup, rebuild commands
  • Development-Guide — Local dev setup, common gotchas
  • Decisions — Architectural decisions register (D001D046)

Features

Core

  • Technique Pages — LLM-synthesized study guides with v2 body sections, signal chains, citations
  • Search — LightRAG primary + Qdrant fallback with 4-tier creator-scoped cascade
  • Pipeline — 6-stage LLM extraction (transcripts → key moments → classification → synthesis → embedding)
  • Player — Audio/video player with chapter markers, key moment timeline pins, and inline technique page player

Creator Tools

  • Follow System — User-to-creator follows with follower counts (M022)
  • Personality Profiles — LLM-extracted teaching style, vocabulary, and tone analysis (M022)
  • Creator Tiers — Free/Pro/Premium tier configuration with Coming Soon placeholders (M022)
  • Highlight Detection v2 — 10-dimension scoring with audio proxy signals, creator review queue (M022)
  • Chat Widget — Floating creator-scoped chat bubble with streaming SSE and citations (M022)
  • Post Editor + File Sharing — Tiptap rich text editor, MinIO file attachments, CRUD API (M023)
  • Shorts Generation Pipeline — ffmpeg clip extraction in 3 format presets from approved highlights (M023)
  • Personality Interpolation — 5-tier continuous personality weight system for chat (M023)
  • Multi-Turn Chat Memory — Redis-backed conversation history with conversation_id threading (M022)
  • Creator Dashboard — Video management, chapter editing, consent controls

Shorts & Publishing (M024)

  • Shorts Publishing Flow — Public shareable URLs via /shorts/{token}, share_token generated at pipeline completion (M024/S01)
  • Embed Support — Chrome-free /embed/:videoId player, iframe snippet with audio-aware height (120px audio, 405px video) (M024/S03)
  • Auto-Captioning — ASS karaoke subtitles from Whisper word-level timings with \k tags for word-by-word highlighting (M024/S04)
  • Template System — Creator-configurable intro/outro cards via admin API, ffmpeg lavfi card rendering, concat demuxer assembly (M024/S04)

Player & UX (M024)

  • Key Moment Timeline Pins — 12px color-coded circle pins (technique=cyan, settings=amber, reasoning=purple, workflow=green) with active-state 1.3x highlighting and touch-friendly hit areas (M024/S02)
  • Inline Collapsible Player — On technique pages between summary and body, with bibliography seek wiring and multi-source-video selector (M024/S02)
  • Citation UX — Timestamp badge links to /watch/:id?t=N, video filename on source cards, shared chatCitations.tsx + formatTime.ts utilities (M024/S05)

Notifications & Cost Management (M025)

  • Email Digest Notifications — Daily Celery Beat emails to followers when creators publish, with signed-token unsubscribe (M025/S01)
  • Rate Limiting — Redis sliding-window per-user/IP/creator rate limiter for chat, fail-open design (M025/S04)
  • Usage Dashboard — Admin token consumption tracking with period aggregation, top creators/users, daily charts (M025/S04)

Creator Experience (M025)

  • Onboarding Wizard — 3-step welcome→consent→tour flow for new creators, triggered on first login (M025/S03)
  • AI Transparency Page — Full entity graph viewer: technique pages, key moments, cross-references, source videos, tags (M025/S05)
  • Data Export — GDPR-style ZIP download of all creator-owned content (12 tables + metadata) (M025/S07)

Resilience & Quality (M025)

  • LLM Fallback — ChatService automatic primary→Ollama failover on connection/timeout/server errors (M025/S08)
  • Prompt Optimization — Refined system prompt with citation density, structure, and domain guidance (M025/S09)
  • Chat Quality Toolkit — 5-dimension LLM-as-judge scorer, SSE eval harness, 10-query test suite (M025/S09)
  • Mobile Responsiveness — ≤400px safety-net breakpoints across all pages, zero horizontal overflow at 375px (M025/S02)
  • Reading Header — Sticky section bar on technique pages with sentinel-based scroll detection (M025/S10)
  • Graph Evaluation — NetworkX benchmark report with Neo4j migration plan at 50K/90K node thresholds (M025/S06)

Platform

  • Authentication — JWT with invite codes, admin/creator roles
  • Consent System — Per-video granular consent with audit trail
  • Impersonation — Admin-to-creator context switching with audit log

Current Scale

  • 95 technique pages
  • 2526 creators
  • 200 source videos
  • 7 topic categories

Stack

Layer Technology
Frontend React 18 + TypeScript + Vite
Backend FastAPI + Celery + SQLAlchemy (async)
Database PostgreSQL 16
Cache/Broker Redis 7
Vector Store Qdrant 1.13.2
RAG Framework LightRAG + NetworkX
Embeddings Ollama (nomic-embed-text)
LLM OpenAI-compatible API (DGX Sparks Qwen primary, local Ollama fallback)
Deployment Docker Compose on ub01, nginx reverse proxy on nuc01

*Last updated: 2026-04-04 — M025 notifications, rate limiting, onboarding, transparency, export, fallback, mobile, quality toolkit