17 — Actor-Driven UX Architecture & Hierarchical Management
Reference for the FUTURE customization/templates layer — superseded by
00-ROADMAP.mdfor current scope (2026-05-31). The MVP ships one dashboard, role-driven content (20-UI-SIMPLIFICATION.md); per-actor UX is deferred.
Purpose: Deep actor analysis driving navigation design, Portals integration at every hierarchy level, comprehensive view/screen inventory, and the "Lego OS" modular philosophy. Date: March 2026 Builds on:
16-MENU-CONTACTID-DESIGN.md(ContactID + initial 3 nav options),15-FEATURE-STRATEGY-MATRIX.md(actors + features),01-PLATFORM-VISION.mdDesign Inputs: Dashboard wireframe (ContactID card + Notifications + Charts), Artist Space wireframe (hero + project grid + floating toolbar), Track/Portal wireframe (metadata + Label Copy + versions)
Table of Contents
- Design Philosophy: The Lego OS
- Actor Deep-Dive: Wants, Expects, Values
- Actor-Adaptive Navigation Architecture
- Portals: From Track Feature to Platform Primitive
- Hierarchical Management Control
- Comprehensive View Inventory
- Navigation Options (Extended Beyond Doc 16)
- The Floating Toolbar (WAVIC Bar)
- Design Decision Matrix
1. Design Philosophy: The Lego OS
The Metaphor
Sonnance is not a single application — it is an operating system for the music industry built from composable blocks. Like LEGO, each block has a defined shape and connector, but the structures you build are unlimited.
Core Principles
| Principle | Meaning | Example |
|---|---|---|
| Composable | Every feature is a block that can be placed at any hierarchy level | Portals (metadata) exists for Track, but extrapolates to Project, Artist, Label |
| Actor-Adaptive | The OS reshapes itself based on who you are | A Producer sees creation tools first; a Manager sees oversight dashboards first |
| Progressive Disclosure | Simple by default, powerful on demand | New users see Home + Library; power users unlock Kanban, Calendar, Analytics, Roster |
| Contextual Actions | Actions change based on where you are | The floating toolbar shows "Upload + New Project" in Artist Space, "Add Version + Share" in Track view |
| Hierarchical Inheritance | Data, access, and views cascade up and down the tree | A Label sees aggregated Portals data across all their Artists; an Artist sees just their own |
The Block System
┌──────────────────────────────────────────────────────────────────┐
│ SONNANCE LEGO BLOCKS │
│ │
│ PRIMITIVE BLOCKS (building material) │
│ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │ Portal │ │ContactID│ │ Player │ │Comment │ │ Status │ │
│ │(metadata)│ │(identity)│ │(audio) │ │(feedback)│ │(workflow)│ │
│ └────────┘ └────────┘ └────────┘ └────────┘ └────────┘ │
│ │
│ COMPOSITE BLOCKS (features assembled from primitives) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Track View │ │ Project View │ │ Artist View │ │
│ │ Portal+Player│ │ Portal+Status│ │ Portal+Roster│ │
│ │ +Comment │ │ +Tracks table│ │ +Projects │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ SYSTEM BLOCKS (platform-level orchestration) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Dashboard │ │ Management │ │ Insights │ │
│ │ Notifications│ │ Control │ │ Analytics │ │
│ │ +Activity │ │ Hierarchy │ │ +AI Agents │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ SOCIAL BLOCKS (connection layer) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Roster │ │ Community │ │ ContactID │ │
│ │ (people) │ │ (discovery) │ │ (identity) │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└──────────────────────────────────────────────────────────────────┘2. Actor Deep-Dive: Wants, Expects, Values
Actor Analysis Framework
For each actor, we answer:
- WANTS: What is their primary goal on the platform?
- EXPECTS: What do they expect to see immediately after login?
- VALUES MOST: What single feature converts them from "trying" to "paying"?
- WORKFLOW: What is their daily loop?
- NAVIGATION PRIORITY: Which sidebar items matter to them?
Actor 1: Musician / Artist (Vocalist, Rapper, Singer-Songwriter)
| Dimension | Analysis |
|---|---|
| WANTS | A private, professional space to manage my music — review what the producer sends, give feedback, track all my projects in one place, share private links with my team |
| EXPECTS | After login: see my latest tracks and any new versions waiting for review. Quick access to the projects I'm actively working on. Notifications about what changed since last visit |
| VALUES MOST | The Wave player (time-synced comments) — replaces the chaos of WhatsApp voice notes saying "go to minute 2:30." This is the "aha moment" |
| WORKFLOW | Open notification → listen to new version → leave comments → approve or request changes → check project status → share approved track with manager |
| NAV PRIORITY | Home (activity feed), Projects (my active work), Notifications (what's new), Player (always accessible) |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Welcome back, [Name]" │
│ │
│ ⚡ NEEDS YOUR ATTENTION (2) │
│ ┌──────────────────────────────────────────┐ │
│ │ 🟠 "Summer Vibes v3" — new mix from Juan │ [Listen →] │
│ │ 🟠 "Night Drive" — awaiting your approval│ [Review →] │
│ └──────────────────────────────────────────┘ │
│ │
│ 📂 RECENT PROJECTS │
│ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │ Album │ │ Single │ │ EP │ │
│ │ cover │ │ cover │ │ cover │ │
│ │ "IAM" │ │"Night" │ │"Waves" │ │
│ └────────┘ └────────┘ └────────┘ │
│ │
│ 🔔 ACTIVITY │
│ • Juan uploaded v3 of "Summer Vibes" — 2h ago │
│ • Maria added a comment on "Night Drive" — 5h ago │
│ • Project "IAM" status changed to Mixing — yesterday │
└────────────────────────────────────────────────────────────┘Actor 2: Producer / Beat Maker
| Dimension | Analysis |
|---|---|
| WANTS | Manage all my sessions/beats efficiently, share with artists, collect feedback without losing context, track which versions are approved, build a portfolio of work |
| EXPECTS | After login: see all my Artist Spaces (one per artist/client), quick upload access, status overview of all active projects. "What needs my attention today?" |
| VALUES MOST | Version management + Portals (metadata tracking) — the ability to see which version is approved, which ISRC is assigned, which credits are locked in. This is their "business brain" |
| WORKFLOW | Upload new version → wait for feedback → address comments → upload revision → fill Portals metadata → mark as ready → move to next track |
| NAV PRIORITY | Home (overview), Artist Spaces (my clients), Upload (quick access), Portals (metadata management), Library (browse all my work) |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Studio Overview" │
│ │
│ 📊 TODAY'S SNAPSHOT │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 12 │ │ 3 │ │ 5 │ │ 2 │ │
│ │ Active │ │ Awaiting │ │ In │ │ Ready to │ │
│ │ Tracks │ │ Feedback │ │ Progress │ │ Release │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ 🎤 MY ARTIST SPACES │
│ ┌────────┐ ┌────────┐ ┌────────┐ ┌────┐ │
│ │Weeknd │ │Client B│ │Client C│ │ + │ │
│ │3 proj │ │1 proj │ │2 proj │ │New │ │
│ │🟢 2 🟠 1│ │🟢 1 │ │🟠 2 │ │ │ │
│ └────────┘ └────────┘ └────────┘ └────┘ │
│ │
│ 🔔 RECENT FEEDBACK │
│ • Weeknd approved v2 of "After Hours" — 1h ago │
│ • Client B: "Love the 808 but cut the intro" — 3h ago │
│ • Client C left 3 comments on "Sunset" — yesterday │
└────────────────────────────────────────────────────────────┘Actor 3: Manager / A&R / Business Representative
| Dimension | Analysis |
|---|---|
| WANTS | Bird's-eye view of everything: all artists, all projects, all deadlines, all money. Be able to drill down when something needs attention. Never be surprised by a missed deadline or unapproved track |
| EXPECTS | After login: a management dashboard — NOT a creative workspace. Calendar view, financial overview, status of all projects across all artists, team activity. The wireframe's "Charts" section with cash flow is exactly this |
| VALUES MOST | Management Control (the hierarchical dashboard) — the ability to see across all artists/projects/tracks at once, filter by status, see financial metrics. This is their "command center" and the feature that justifies Enterprise pricing |
| WORKFLOW | Check dashboard → scan for red flags (overdue, blocked) → drill into specific artist/project → approve or comment → check calendar for upcoming deadlines → review financial reports |
| NAV PRIORITY | Dashboard (command center), Roster (people management), Calendar (deadlines), Insights/Charts (analytics), Checklist (tasks), then deep-dive into specific Artists/Projects |
First screen after login (wireframe-aligned):
┌──────────────────────────────────────────────────────────────┐
│ │
│ SIDEBAR │ MAIN CONTENT │
│ ───────── │ ────────────── │
│ │ │
│ 🏠 Home │ 📋 NOTIFICATIONS │
│ 👥 Roster │ ┌────────────────────────────────────┐ │
│ ☑️ Checklist │ │ RELS B / Track — 2 versions 🟢🟠 │ │
│ 🌐 Community │ │ Chloe / Waves — 1 version 🟢 │ │
│ │ │ Dua Lipa / New — 3 versions 🟠🟠🟠│ │
│ ───────── │ └────────────────────────────────────┘ │
│ │ │
│ ContactID Card │ 📊 CHARTS │
│ ┌──────────┐ │ ┌────────────────────────────────────┐ │
│ │ Chloe H │ │ │ [Avatar] RELS B │ │
│ │ Vocalist │ │ │ │ │
│ │ ★ 4.5 │ │ │ ████ ██ ████ ███ █ ████ ████ │ │
│ │ $27k │ │ │ Cash Flow (Monthly / Yearly) │ │
│ │ $150/hr │ │ └────────────────────────────────────┘ │
│ └──────────┘ │ │
│ │ │
└──────────────────────────────────────────────────────────────┘Actor 4: Mixing / Mastering Engineer
| Dimension | Analysis |
|---|---|
| WANTS | Receive sessions, deliver versions, track revisions, get clear feedback, manage my queue of work across multiple clients |
| EXPECTS | After login: a work queue — what's assigned to me, what's due, what has feedback. NOT interested in business metrics or social features |
| VALUES MOST | Version management + time-synced comments — the ability to upload a new mix, get pinpointed feedback at exact timestamps, and know when a version is approved without email chains |
| WORKFLOW | Check queue → download stems → work in DAW → upload new version → review comments → address notes → upload revision → mark delivered |
| NAV PRIORITY | Home (work queue), Projects (assigned work), Notifications (feedback), Player (review), Library (reference sessions) |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Work Queue" │
│ │
│ 🔴 DUE TODAY │
│ ┌──────────────────────────────────────────────┐ │
│ │ "Summer Vibes" → Mastering │ Due: Today │ [Open] │
│ └──────────────────────────────────────────────┘ │
│ │
│ 🟡 IN PROGRESS (3) │
│ ┌──────────────────────────────────────────────┐ │
│ │ "Night Drive" → Mixing v2 │ 2 comments │ [Open] │
│ │ "Sunset" → Mixing v1 │ 5 comments │ [Open] │
│ │ "IAM" → Mastering │ Awaiting stems│ [—] │
│ └──────────────────────────────────────────────┘ │
│ │
│ 🟢 COMPLETED THIS WEEK (4) │
│ │ "After Hours" v3 — Approved ✓ │
│ │ "Blinding Lights" v2 — Approved ✓ │
│ │ ... │
└────────────────────────────────────────────────────────────┘Actor 5: Visual Artist / Creative Director
| Dimension | Analysis |
|---|---|
| WANTS | Review and deliver visual assets (album covers, music videos, promo material) with the same version control and feedback system that audio gets |
| EXPECTS | After login: see visual projects assigned to me, review feedback on submitted artwork, upload new visual versions |
| VALUES MOST | Visual review with annotation/comments — being able to get feedback on a specific area of an album cover, not just "I don't like the colors" |
| WORKFLOW | Receive brief → upload concept → get feedback → revise → upload revision → get approval → deliver finals |
| NAV PRIORITY | Projects (assigned visual work), Notifications (feedback), Library (asset browse), Upload |
Actor 6: Label / A&R Executive
| Dimension | Analysis |
|---|---|
| WANTS | Manage an entire roster — see all signed artists, all their projects, pipeline health, release schedule, financial performance. Aggregate view across the entire catalog |
| EXPECTS | After login: a label dashboard showing roster overview, upcoming releases, pipeline funnel (tracks by status), financial summary. Similar to the Manager but at a higher scale |
| VALUES MOST | Hierarchical Management Control — the ability to zoom from Label → Artist → Project → Track seamlessly. Plus the Roster feature for managing people, contracts, and relationships |
| WORKFLOW | Review roster dashboard → check release calendar → identify bottleneck projects → drill into specific artist → review specific track → approve or note → check analytics/charts |
| NAV PRIORITY | Dashboard (label command), Roster (artist management), Calendar (release schedule), Insights (analytics across catalog), Management Control (hierarchy browser) |
First screen after login:
┌────────────────────────────────────────────────────────────────┐
│ "Label Command Center — Universal Music Latin" │
│ │
│ 📊 PIPELINE FUNNEL │
│ ┌───────────────────────────────────────────────┐ │
│ │ Pre-Prod ███████████████ 24 tracks │ │
│ │ Recording ████████████ 18 tracks │ │
│ │ Mixing ████████ 12 tracks │ │
│ │ Mastering █████ 8 tracks │ │
│ │ Completed ███ 5 tracks │ │
│ └───────────────────────────────────────────────┘ │
│ │
│ 👥 ROSTER SNAPSHOT 📅 UPCOMING RELEASES │
│ ┌────────────────────┐ ┌─────────────────────┐ │
│ │ 12 Artists │ │ Mar 28 — RELS B EP │ │
│ │ 47 Active Projects │ │ Apr 05 — Chloe Sngl │ │
│ │ 143 Tracks │ │ Apr 12 — Weeknd LP │ │
│ │ 8 Need Attention 🔴 │ │ Apr 20 — Dua LP │ │
│ └────────────────────┘ └─────────────────────┘ │
│ │
│ 💰 FINANCIAL OVERVIEW │
│ Revenue this month: $127,400 │ Pending payments: $23,100 │
└────────────────────────────────────────────────────────────────┘Actor 7: Studio Owner / Facility Manager
| Dimension | Analysis |
|---|---|
| WANTS | Track sessions that happen in my studio, manage bookings, see which engineers are working on what, associate projects with studio time |
| EXPECTS | After login: calendar view with upcoming sessions, studio utilization metrics, active projects being worked on in the facility |
| VALUES MOST | Calendar + Session Management — the ability to tie physical studio time to digital projects. Also Checklist for session prep |
| WORKFLOW | Check today's schedule → prep studio for incoming session → associate session with project → track time → invoice → review utilization |
| NAV PRIORITY | Calendar (primary), Dashboard (utilization), Projects (active in studio), Roster (engineers/artists using facility) |
Actor 8: Fan / Listener (Future Phase)
| Dimension | Analysis |
|---|---|
| WANTS | Follow favorite artists, get early access to music, engage with the creative process, share discoveries |
| EXPECTS | A clean, consumption-focused experience — NOT a production dashboard. Think Spotify meet Patreon: feed of artist updates, exclusive tracks, community |
| VALUES MOST | Exclusive access — hearing a track before it's released, seeing behind-the-scenes process. The ContactID public profile is the entry point |
| WORKFLOW | Open app → check feed for new releases from followed artists → listen → comment → share → discover new artists via Community |
| NAV PRIORITY | Feed (discovery), Library (saved/liked), Community (social), Profile (followed artists), Player |
Actor 9: Event Organizer
| Dimension | Analysis |
|---|---|
| WANTS | Discover and book artists, review their portfolio/credits, manage event lineup, coordinate with managers |
| EXPECTS | After login: upcoming events, confirmed/pending artists, communication thread with managers |
| VALUES MOST | Artist discovery + ContactID — the ability to browse public profiles, see an artist's credits (via Portals data), listen to tracks, and initiate booking |
| WORKFLOW | Browse Community/Roster → find artists → review portfolio → contact manager → negotiate → confirm → manage event lineup |
| NAV PRIORITY | Events/Calendar, Community (discovery), Roster (contacts), Messages |
Actor 10: Investor / Financial Stakeholder
| Dimension | Analysis |
|---|---|
| WANTS | Financial visibility: ROI on signed artists, revenue trends, cost breakdown, catalog value, market comparisons |
| EXPECTS | After login: financial dashboard — revenue charts, growth metrics, portfolio performance. The wireframe's "Charts" with cash flow is designed for this actor |
| VALUES MOST | Insights + Data Integration — the aggregated analytics that show which artists are performing, which investments are paying off, where the catalog is growing |
| WORKFLOW | Open Insights → review portfolio performance → compare artists → check trends → drill into specific artist if needed → export reports |
| NAV PRIORITY | Insights/Charts (primary), Dashboard (overview), Roster (portfolio), Reports (export) |
Distribution-Side Actors (11–16)
These actors consume the metadata and audio that creation-side actors produce. They represent the other half of Sonnance's two-sided platform — the same Portals data entered once flows automatically to all distribution-side actors, replacing email pitches + Google Drive + Dropbox + PDF one-sheets.
Actor 11: Playlist Curator / DSP Editor
| Dimension | Analysis |
|---|---|
| WANTS | Receive high-quality pitches with the info I need to decide — genre, release date, ISRC, artist bio, mood tags, and an instant way to listen. Stop drowning in emails with WeTransfer links |
| EXPECTS | After login: a submission inbox — pitches from artists/managers I follow, sortable by genre, release date, mood. Each pitch shows the full Label Copy from Portals without me having to ask for it |
| VALUES MOST | Submission Inbox + Player — the ability to receive pitches as structured data (not emails), preview tracks instantly in the wave player, and see all metadata at a glance. Saves hours per week |
| WORKFLOW | Open Submission Inbox → filter by genre/mood → preview track → check metadata (ISRC, release date, credits) → save to playlist shortlist or reject → batch add to playlist |
| NAV PRIORITY | Inbox (submissions), Library (my playlists), Player (preview), Insights (playlist analytics), Search |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Submission Inbox" │
│ │
│ FILTERS: [All Genres ▾] [Release: Next 30d ▾] [Mood ▾] │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ▶ "Summer Vibes" RELS B │ Pop/R&B │ │
│ │ Release: Apr 5 ISRC: ✓ │ 🟢 New Pitch │ │
│ │ via: Juan (Manager) │ [Preview] [Save]│ │
│ ├─────────────────────────────────────────────────────┤ │
│ │ ▶ "Electric Dreams" Chloe H │ Electronic │ │
│ │ Release: Apr 12 ISRC: ✓ │ 🟢 New Pitch │ │
│ │ via: Maria (PR) │ [Preview] [Save]│ │
│ ├─────────────────────────────────────────────────────┤ │
│ │ ▶ "Nightfall" Dua Lipa │ Dance │ │
│ │ Release: Mar 28 ISRC: ✓ │ 🟡 Reviewed │ │
│ │ via: Label Direct │ [Preview] [—] │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ 📊 THIS WEEK: 14 pitches received, 3 saved, 2 added │
└────────────────────────────────────────────────────────────┘Actor 12: Radio Programmer / DJ
| Dimension | Analysis |
|---|---|
| WANTS | Receive promo packages with radio-ready content — clean/explicit flag, radio edit versions, BPM/key info, ISRC for logging, and a way to preview without downloading. Manage my rotation queue |
| EXPECTS | After login: a promo queue — incoming promos sorted by format (singles ready for airplay), with all the technical metadata I need (BPM, key, duration, clean/explicit, radio edit availability) |
| VALUES MOST | Promo Queue + Version Access — getting the right version (radio edit, clean, instrumental) directly from the artist/label without back-and-forth. Seeing BPM/key saves programming time |
| WORKFLOW | Open Promo Queue → scan new arrivals → preview tracks → check format (clean? radio edit?) → add to rotation schedule → log plays with ISRC → provide feedback to promoter |
| NAV PRIORITY | Promo Queue (incoming), Calendar (rotation schedule), Player (preview), Library (scheduled tracks), Contacts |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Promo Queue" │
│ │
│ FILTERS: [Format ▾] [BPM Range ▾] [Clean/Explicit ▾] │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ▶ "Summer Vibes" │ 124 BPM C maj │ 3:42 │ Clean │ │
│ │ RELS B │ Radio Edit: ✓ │ ISRC: ✓ │ │
│ │ Versions: [Radio Edit] [Original] [Instrumental] │ │
│ │ [Add to Rotation] [Pass] [Feedback] │ │
│ ├─────────────────────────────────────────────────────┤ │
│ │ ▶ "Electric Dreams" │ 128 BPM A min │ 4:15 │ Expl │ │
│ │ Chloe H │ Radio Edit: ✗ │ ISRC: ✓ │ │
│ │ Versions: [Original] [Instrumental] │ │
│ │ [Request Radio Edit] [Pass] [Feedback] │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ 📅 ROTATION THIS WEEK: 8 tracks scheduled │
└────────────────────────────────────────────────────────────┘Actor 13: Music Publisher / Admin
| Dimension | Analysis |
|---|---|
| WANTS | Manage songwriting copyrights — track who wrote what, publishing splits, ISWC codes, sync licensing eligibility. See the full catalog of compositions I administer and their revenue streams |
| EXPECTS | After login: a catalog view organized by composition (not recording) — showing writers, publishers, splits, sync status, and collection status. Integration with PROs (ASCAP/BMI/SESAC/PRS) data |
| VALUES MOST | Credits Split + Contracts — the ability to manage and verify songwriter/publisher splits across all compositions, generate split sheets, and track sync placements. This replaces spreadsheets |
| WORKFLOW | Review catalog → verify splits on new compositions → generate split sheets → manage sync requests → track royalty collection → communicate with writers about new opportunities |
| NAV PRIORITY | Catalog (compositions), Contracts (split sheets), Insights (royalty tracking), Roster (writers I represent), Messages |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Composition Catalog" │
│ │
│ ┌────────────────────────────────────────────────────┐ │
│ │ Composition │ Writers │ Pub % │ Sync │ ISWC│ │
│ │────────────────┼──────────────┼───────┼──────┼─────│ │
│ │ Summer Vibes │ Juan 40% │ 100% │ ✓ │ ✓ │ │
│ │ │ Maria 30% │ │ │ │ │
│ │ │ RELS B 30% │ │ │ │ │
│ │────────────────┼──────────────┼───────┼──────┼─────│ │
│ │ Night Drive │ Chloe 50% │ 75% │ ✓ │ ✗ │ │
│ │ │ Juan 25% │ │ │ │ │
│ │ │ TBD 25% │ │ │ │ │
│ │────────────────┼──────────────┼───────┼──────┼─────│ │
│ │ Electric Dreams│ Chloe 100% │ 100% │ ✗ │ ✓ │ │
│ └────────────────────────────────────────────────────┘ │
│ │
│ 📊 CATALOG: 87 compositions │ 12 pending splits │ $23k rev│
└────────────────────────────────────────────────────────────┘Actor 14: Sync Licensing Agent / Music Supervisor
| Dimension | Analysis |
|---|---|
| WANTS | Search and discover music for film/TV/ads/games by mood, genre, BPM, key, tempo. Listen instantly, check clearance status, access stems, and verify credits — all without emailing 5 different people |
| EXPECTS | After login: a powerful catalog search — filter by mood/genre/energy/tempo, preview tracks instantly, see clearance status (master + publishing), and access stems if available |
| VALUES MOST | Catalog Search + Portals Data — the rich metadata in Portals (genre, mood, BPM, key, stems, clearance, credits) becomes the ultimate sync search engine. One platform replaces multiple music libraries |
| WORKFLOW | Receive brief (need: upbeat indie rock, 2min, clearable) → search catalog → filter by mood/tempo/clearance → preview tracks → shortlist → check credits/splits → request license → download stems |
| NAV PRIORITY | Search/Catalog (primary), Player (preview), Library (shortlists/briefs), Contacts (rights holders), Messages |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Music Search — Sync & Licensing" │
│ │
│ 🔍 [Search by mood, genre, tempo, lyrics, style...] │
│ │
│ FILTERS: │
│ [Genre ▾] [Mood ▾] [BPM: 90-130] [Key ▾] [Duration ▾] │
│ [Clearance: ✓ Both Sides] [Stems: ✓ Available] │
│ │
│ RESULTS (47 tracks match) │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ▶ "Summer Vibes" │ Indie Pop │ 124 BPM │ C maj │ │
│ │ RELS B │ Mood: Upbeat, Nostalgic │ │
│ │ Clearance: 🟢 Master ✓ Publishing ✓ │ │
│ │ Stems: ✓ Available │ Credits: 3 writers │ │
│ │ [Shortlist] [Request License] [Download Stems] │ │
│ ├─────────────────────────────────────────────────────┤ │
│ │ ▶ "Electric Dreams"│ Synthwave │ 128 BPM │ A min │ │
│ │ Chloe H │ Mood: Energetic, Dreamy │ │
│ │ Clearance: 🟡 Master ✓ Publishing: Pending │ │
│ │ Stems: ✗ Not available │ Credits: 1 writer │ │
│ │ [Shortlist] [Contact Publisher] │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ 📋 ACTIVE BRIEFS: 3 open │ SHORTLISTS: 2 shared │
└────────────────────────────────────────────────────────────┘Actor 15: PR / Publicist
| Dimension | Analysis |
|---|---|
| WANTS | Build and send press kits — artist bio, photos, one-sheet, audio links, release timeline. Track which outlets received what, manage campaign timelines, and see coverage results |
| EXPECTS | After login: a campaign dashboard — active release campaigns with timeline, press kit status (complete/incomplete), outlet tracking (sent/opened/covered), and upcoming campaign milestones |
| VALUES MOST | Pitch/Promo Delivery + Portals — the ability to auto-generate professional press kits from Portals data (bio, credits, genre, cover art, audio links) and send them as structured packages instead of email attachments |
| WORKFLOW | Build press kit from Portals data → customize per outlet → send pitch → track opens/responses → clip coverage → report results → plan next campaign phase |
| NAV PRIORITY | Campaigns (release plans), Contacts (outlets/journalists), Portals (press kit source), Calendar (campaign timeline), Insights (coverage tracking) |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Campaign Dashboard" │
│ │
│ 📋 ACTIVE CAMPAIGNS │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ "Summer Vibes" — RELS B │ Release: Apr 5 │ │
│ │ Phase: Pre-release │ Press Kit: 🟢 Ready│ │
│ │ Outlets pitched: 12/25 │ Responses: 4 │ │
│ │ Coverage: 2 features, 1 review │ [View Campaign →] │ │
│ ├──────────────────────────────────────────────────────┤ │
│ │ "Electric Dreams" — Chloe H │ Release: Apr 12 │ │
│ │ Phase: Building kit │ Press Kit: 🟡 WIP │ │
│ │ Missing: Hi-res photos, bio update │ │
│ │ Outlets: 0/20 pitched │ [Edit Kit →] │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
│ 📅 UPCOMING │
│ • Apr 1 — Send "Summer Vibes" kit to Tier 2 outlets │
│ • Apr 3 — Exclusives embargo lifts │
│ • Apr 8 — Chloe press kit deadline │
└────────────────────────────────────────────────────────────┘Actor 16: Songwriter (Non-Performing)
| Dimension | Analysis |
|---|---|
| WANTS | Upload demos, pitch songs to artists/A&R/publishers, track placements, manage credit splits, and see my catalog of compositions with their status (pitched/placed/released/collecting) |
| EXPECTS | After login: my songwriting pipeline — demos in progress, songs pitched to artists, placements confirmed, and royalty/credit tracking. A songwriter-centric view of the creative supply chain |
| VALUES MOST | Demo pipeline + Credits — the ability to upload a rough demo, tag it with mood/genre/tempo, pitch it to artists or publishers on the platform, and track when it gets placed. Credit splits confirmed before release |
| WORKFLOW | Upload demo → tag with metadata → pitch to artists/publishers → track interest → negotiate split → confirm credits in Portals → track release → collect royalties |
| NAV PRIORITY | Pipeline (my songs), Upload (demos), Contacts (artists/publishers), Credits (split tracking), Insights (placements/revenue) |
First screen after login:
┌────────────────────────────────────────────────────────────┐
│ "Songwriting Pipeline" │
│ │
│ 📊 PIPELINE SUMMARY │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 8 │ │ 5 │ │ 3 │ │ 12 │ │
│ │ Demos │ │ Pitched │ │ Placed │ │ Released │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ 🎵 RECENT ACTIVITY │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ "Midnight Run" — Pitched to RELS B (via Manager) │ │
│ │ Status: 🟡 Under consideration │ Splits: 60/40 │ │
│ ├──────────────────────────────────────────────────────┤ │
│ │ "Golden Hour" — Placed! Chloe H confirmed │ │
│ │ Status: 🟢 In recording │ Splits: 50/25/25 │ │
│ │ Credits confirmed in Portals ✓ │ │
│ ├──────────────────────────────────────────────────────┤ │
│ │ "Velvet Sky" — Demo uploaded today │ │
│ │ Status: ⚪ Ready to pitch │ [Pitch →] [Edit →] │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
│ 💰 EARNINGS: $4,200 this quarter from 12 placed songs │
└────────────────────────────────────────────────────────────┘Actor Value Matrix Summary
| Actor | #1 Feature | #2 Feature | #3 Feature | Conversion Trigger |
|---|---|---|---|---|
| Musician/Artist | Wave Player | Version Mgmt | Notifications | First time-synced comment received |
| Producer | Version Mgmt | Portals | Artist Spaces | First client collaboration in-platform |
| Manager | Mgmt Control | Roster | Calendar | Seeing all artists/projects in one dashboard |
| Engineer | Work Queue | Comments | Version Mgmt | Getting pinpoint feedback without email |
| Visual Artist | Visual Review | Version Mgmt | Comments | Annotated visual feedback |
| Label/A&R | Mgmt Control | Roster | Insights | Pipeline funnel across entire catalog |
| Studio Owner | Calendar | Sessions | Projects | Linking studio time to digital projects |
| Fan | Exclusive Access | Community | ContactID | Early access to unreleased music |
| Event Organizer | Discovery | ContactID | Calendar | Finding and booking artist through platform |
| Investor | Insights | Data Integration | Reports | Portfolio performance dashboard |
| Playlist Curator | Submission Inbox | Player | Metadata (Portals) | Receiving a structured pitch vs. email |
| Radio Programmer | Promo Queue | Versions | Metadata (BPM/Key) | Getting radio edit + metadata in one place |
| Music Publisher | Credits/Splits | Contracts | Catalog Mgmt | Split sheet auto-generated from Portals |
| Sync Agent | Catalog Search | Stems Access | Clearance Status | Finding the perfect track in seconds vs. hours |
| PR/Publicist | Press Kit Builder | Pitch Delivery | Campaign Tracking | Auto-generated press kit from Portals data |
| Songwriter | Demo Pipeline | Credits | Pitch Tracking | Song placed and credits confirmed in-platform |
3. Actor-Adaptive Navigation Architecture
The Adaptive Menu System
Instead of one static sidebar for everyone, Sonnance adapts navigation based on actor type (set during onboarding or adjustable in Settings). Every actor sees the same app, but the order, emphasis, and default view changes.
Onboarding Role Selection
┌────────────────────────────────────────────────────────────┐
│ │
│ "What best describes your role?" │
│ │
│ CREATION SIDE │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 🎤 │ │ 🎹 │ │ 📊 │ │
│ │ Artist / │ │ Producer │ │ Manager /│ │
│ │ Creator │ │ / Maker │ │ Label │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 🎛 │ │ 🎨 │ │ 🏢 │ │
│ │ Engineer │ │ Visual / │ │ Studio │ │
│ │ │ │ Creative │ │ Owner │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ DISTRIBUTION SIDE │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 📋 │ │ 📻 │ │ 📜 │ │
│ │ Playlist │ │ Radio / │ │ Publisher│ │
│ │ Curator │ │ DJ │ │ / Admin │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 🎬 │ │ 📣 │ │ ✍️ │ │
│ │ Sync / │ │ PR / │ │ Song- │ │
│ │ Licensing│ │ Publicist│ │ writer │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ "You can always change this later" │
│ [Continue →] │
└────────────────────────────────────────────────────────────┘Sidebar Configuration Per Actor
The sidebar uses a slot system — 4 primary slots visible by default, everything else in "More" or accessible via search:
SIDEBAR SLOT MODEL
────────────────────────────────
SLOT 1 — Primary View (Home/Dashboard/Queue)
SLOT 2 — Content Hub (Library/Roster/Calendar)
SLOT 3 — Create/Action (Projects/Upload)
SLOT 4 — Intelligence (Insights/Checklist)
─────── divider ──────
MORE ▾ (expandable: all other features)
─────── divider ──────
SYSTEM (Trash, Storage, Settings)
────────────────────────────────| Slot | Artist/Creator | Producer/Maker | Manager/Label | Engineer | Studio Owner | Curator | Radio Prog. | Publisher | Sync Agent | PR/Publicist | Songwriter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| S1 | 🏠 Home (activity) | 🏠 Home (studio overview) | 📊 Dashboard (command) | 📋 Queue (work queue) | 📅 Calendar | 📥 Inbox (submissions) | 📥 Promo Queue | 📚 Catalog | 🔍 Search (catalog) | 📋 Campaigns | 🎵 Pipeline |
| S2 | 📚 Library | 🎤 Artist Spaces | 👥 Roster | 📂 Projects | 📂 Projects | 📚 Library (playlists) | 📅 Calendar (rotation) | 📜 Contracts | 🎧 Player (preview) | 👥 Contacts | ↑ Upload |
| S3 | 📂 Projects | 📂 Projects | 📅 Calendar | 📚 Library | 👥 Roster | 🎧 Player | 🎧 Player | 📊 Insights | 📚 Library (shortlists) | 📅 Calendar | 👥 Contacts |
| S4 | 🔔 Activity | 📊 Insights | ☑️ Checklist | 🔔 Activity | 📊 Insights | 📊 Insights | 📚 Library | 👥 Roster | 💬 Contacts | 📊 Insights | 📊 Insights |
| More | Roster, Calendar, Checklist, Community, Insights | Roster, Calendar, Checklist, Community | Projects, Library, Community, Insights (detail) | Checklist, Roster, Insights | Checklist, Community, Library | Contacts, Messages, Calendar | Contacts, Messages, Insights | Calendar, Messages, Community | Calendar, Contracts, Messages | Library, Checklist, Messages | Calendar, Checklist, Library |
How It Works in Code
// Navigation config per actor type
const NAV_PRESETS: Record<ActorType, NavConfig> = {
// ── CREATION SIDE ──────────────────────────────────────
artist: {
primary: ['home', 'library', 'projects', 'activity'],
secondary: ['roster', 'calendar', 'checklist', 'community', 'insights'],
defaultRoute: '/dashboard',
dashboardVariant: 'creator',
},
producer: {
primary: ['home', 'artistSpaces', 'projects', 'insights'],
secondary: ['roster', 'calendar', 'checklist', 'community', 'library'],
defaultRoute: '/dashboard',
dashboardVariant: 'studio',
},
manager: {
primary: ['dashboard', 'roster', 'calendar', 'checklist'],
secondary: ['projects', 'library', 'community', 'insights'],
defaultRoute: '/command',
dashboardVariant: 'management',
},
engineer: {
primary: ['queue', 'projects', 'library', 'activity'],
secondary: ['roster', 'checklist', 'insights', 'community'],
defaultRoute: '/queue',
dashboardVariant: 'workQueue',
},
studio: {
primary: ['calendar', 'projects', 'roster', 'insights'],
secondary: ['library', 'checklist', 'community', 'home'],
defaultRoute: '/calendar',
dashboardVariant: 'studio',
},
label: {
primary: ['dashboard', 'roster', 'calendar', 'checklist'],
secondary: ['projects', 'library', 'insights', 'community'],
defaultRoute: '/command',
dashboardVariant: 'label',
},
// ── DISTRIBUTION SIDE ──────────────────────────────────
curator: {
primary: ['inbox', 'library', 'player', 'insights'],
secondary: ['contacts', 'messages', 'calendar', 'search'],
defaultRoute: '/submissions',
dashboardVariant: 'curator',
},
radioProgrammer: {
primary: ['promoQueue', 'calendar', 'player', 'library'],
secondary: ['contacts', 'messages', 'insights', 'search'],
defaultRoute: '/promo',
dashboardVariant: 'radio',
},
publisher: {
primary: ['catalog', 'contracts', 'insights', 'roster'],
secondary: ['calendar', 'messages', 'community', 'library'],
defaultRoute: '/catalog',
dashboardVariant: 'publisher',
},
syncAgent: {
primary: ['search', 'player', 'library', 'contacts'],
secondary: ['calendar', 'contracts', 'messages', 'insights'],
defaultRoute: '/catalog-search',
dashboardVariant: 'sync',
},
publicist: {
primary: ['campaigns', 'contacts', 'calendar', 'insights'],
secondary: ['library', 'checklist', 'messages', 'portals'],
defaultRoute: '/campaigns',
dashboardVariant: 'pr',
},
songwriter: {
primary: ['pipeline', 'upload', 'contacts', 'insights'],
secondary: ['calendar', 'checklist', 'library', 'credits'],
defaultRoute: '/pipeline',
dashboardVariant: 'songwriter',
},
};The "More" Drawer (Mobile) / Expandable Section (Desktop)
Items not in the primary 4 slots live in "More." Users can pin items from More into their primary 4, making navigation fully customizable beyond the actor preset.
DESKTOP: "More" section below divider (collapsed by default, click to expand)
─────────────────────────────────
🏠 Home ← SLOT 1
👥 Roster ← SLOT 2
📅 Calendar ← SLOT 3
☑️ Checklist ← SLOT 4
─────── More ──────
📂 Projects 📌 (click pin to promote to primary)
📚 Library 📌
🌐 Community 📌
📊 Insights 📌
─────── System ────
🗑 Trash
☁️ Storage
⚙ Settings
─────────────────────────────────
MOBILE: 5-tab bottom bar (center = Create), "More" items in Profile tab4. Portals: From Track Feature to Platform Primitive
Current State (Implemented)
Portals is currently a track-level drawer that manages metadata:
CURRENT PORTALS DRAWER (track level only)
┌─────────────────────────────────────────────┐
│ ← Close [Track Switcher ▾] │
│ │
│ ┌─ INITIAL INFO ────────────────────┐ │
│ │ Track Name (editable) │ │
│ │ Team: [avatars] [+] │ │
│ │ Status: [Pre-production ▾] │ │
│ │ Project: IAM │ │
│ │ Type: Single │ │
│ │ Cover: [image card] │ │
│ │ Audio Versions: [v1] [v2] [+] │ │
│ └───────────────────────────────────┘ │
│ │
│ ┌─ LABEL COPY ──────────────────────┐ │
│ │ Track Title Release [status ●] │ │
│ │ Track Version Release [status ●] │ │
│ │ Release Date [status ●] │ │
│ │ Artist(s) [status ●] │ │
│ │ Genre [status ●] │ │
│ │ Label [status ●] │ │
│ │ ISRC [status ●] │ │
│ │ UPC [status ●] │ │
│ └───────────────────────────────────┘ │
│ │
│ ┌─ MEDIA & ASSETS ─────────────────┐ │
│ │ [Attachment cards] │ │
│ └───────────────────────────────────┘ │
│ │
│ ┌─ CREDITS SPLIT ──────────────────┐ │
│ │ Name │ Role │ Masters │ Pub │ │
│ │ Juan │ Prod │ 40% │ 30% │ │
│ │ Maria │ Writer │ 20% │ 40% │ │
│ │ [drag to reorder] │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────────┘Portals as Platform Primitive: Every Level Gets a Portal
The "lego" principle means Portals is not just for tracks — it's a metadata management block that can be placed at any hierarchy level, showing aggregated or specific data.
Portal at Project Level (New)
PROJECT PORTAL DRAWER
┌──────────────────────────────────────────────────────┐
│ ← Close [Project Switcher ▾] │
│ │
│ ┌─ PROJECT INFO ────────────────────────────┐ │
│ │ Project Name: IAM (editable) │ │
│ │ Type: [Single ▾] │ │
│ │ Team: [avatars] [+] │ │
│ │ Cover Art: [image card] │ │
│ │ Created: Jan 15, 2026 │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ TRACKS OVERVIEW ────────────────────────┐ │
│ │ Track │ Status │ Portal │ │
│ │ Summer Vibes │ 🟢 Mixing │ 6/8 ✓ │ │
│ │ Night Drive │ 🟡 Recording│ 3/8 ✓ │ │
│ │ Sunset │ 🔴 Not start│ 0/8 ✓ │ │
│ │ │ │
│ │ Portal Completion: 37.5% ████░░░░░░ │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ AGGREGATED LABEL COPY ──────────────────┐ │
│ │ All tracks have ISRC? 🔴 2/3 │ │
│ │ All tracks have UPC? 🟢 3/3 │ │
│ │ All tracks have credits? 🟡 1/3 │ │
│ │ Release date set? 🟢 Yes │ │
│ │ All statuses approved? 🔴 No │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ CREDITS SUMMARY ────────────────────────┐ │
│ │ Unique collaborators: 5 │ │
│ │ Juan (Producer) — on 3/3 tracks │ │
│ │ Maria (Writer) — on 2/3 tracks │ │
│ │ [View full credits matrix →] │ │
│ └───────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘Portal at Artist Level (New)
ARTIST PORTAL DRAWER
┌──────────────────────────────────────────────────────┐
│ ← Close [Artist Switcher ▾] │
│ │
│ ┌─ ARTIST INFO ─────────────────────────────┐ │
│ │ Artist Name: The Weeknd │ │
│ │ Genre(s): R&B, Pop, Electronic │ │
│ │ Team: [avatars] [+] │ │
│ │ Bio: (editable rich text) │ │
│ │ Avatar + Banner: [image cards] │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ PROJECTS OVERVIEW ──────────────────────┐ │
│ │ Project │ Tracks │ Status │ Portal │ │
│ │ After Hours LP │ 14 │ 🟢 12/14│ 89% │ │
│ │ Dawn FM LP │ 16 │ 🟡 8/16 │ 45% │ │
│ │ IAM Single │ 1 │ 🔴 0/1 │ 12% │ │
│ │ │ │
│ │ Total Tracks: 31 │ Catalog Readiness: 62% │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ METADATA HEALTH ────────────────────────┐ │
│ │ ISRC Coverage: 🟢 28/31 (90%) │ │
│ │ Credits Complete: 🟡 22/31 (71%) │ │
│ │ Label Copy Done: 🟡 19/31 (61%) │ │
│ │ All Approved: 🔴 12/31 (39%) │ │
│ └───────────────────────────────────────────┘ │
│ │
│ ┌─ TEAM DIRECTORY ─────────────────────────┐ │
│ │ 8 collaborators across 3 projects │ │
│ │ [View ContactID cards →] │ │
│ └───────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘Portal at Label/Organization Level (New — Phase 2+)
LABEL PORTAL (Management Control view)
┌──────────────────────────────────────────────────────────────┐
│ ← Close Organization: Universal Music Latin │
│ │
│ ┌─ LABEL INFO ──────────────────────────────────────┐ │
│ │ Name: Universal Music Latin │ │
│ │ Artists: 12 │ Total Tracks: 487 │ Team: 34 │ │
│ └───────────────────────────────────────────────────┘ │
│ │
│ ┌─ CATALOG HEALTH ─────────────────────────────────┐ │
│ │ ████████████████████░░░░ 78% catalog ready │ │
│ │ │ │
│ │ By Artist: │ │
│ │ The Weeknd ████████████░░░░ 62% [drill →] │ │
│ │ RELS B ██████████████░░ 85% [drill →] │ │
│ │ Chloe Harrison ████████████████ 95% [drill →] │ │
│ │ Dua Lipa ██████░░░░░░░░░░ 35% [drill →] │ │
│ └───────────────────────────────────────────────────┘ │
│ │
│ ┌─ PIPELINE BY STATUS ─────────────────────────────┐ │
│ │ Not Started ████████ 45 │ │
│ │ Pre-Prod ██████ 32 │ │
│ │ Recording █████ 28 │ │
│ │ Editing ███ 18 │ │
│ │ Mixing ████ 22 │ │
│ │ Mastering ██ 12 │ │
│ │ Completed ████████████████████ 330 │ │
│ └───────────────────────────────────────────────────┘ │
│ │
│ ┌─ MISSING METADATA REPORT ────────────────────────┐ │
│ │ 23 tracks missing ISRC │ │
│ │ 45 tracks missing credits │ │
│ │ 12 tracks overdue for approval │ │
│ │ [Export Report →] [Assign to Team →] │ │
│ └───────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────┘Portal Composition Table
| Level | Portal Contains | Aggregates From | New Data |
|---|---|---|---|
| Track | Label Copy, Credits, Versions, Status, Attachments | — (leaf node) | Per-field release status |
| Project | Track count, Portal completion %, Credits summary | All child Tracks | Project-level release date, Type, Cover |
| Artist | Project count, Catalog readiness %, Metadata health | All child Projects | Bio, Genre, Banner, Team directory |
| Team | Shared members, Cross-artist projects, Workload | All Artists in team | Team calendar, Availability |
| Genre | Genre analytics, Cross-artist comparison | All Artists tagged | Market trends, Genre performance |
| Label | Full catalog health, Pipeline funnel, Financial | All signed Artists | Label info, Revenue, Contracts |
| Organization | Multi-label aggregation, Portfolio view | All child Labels | Org structure, Budget, Strategy |
5. Hierarchical Management Control
The Hierarchy Tree
┌──────────────┐
│ Organization │ Conglomerate level (Sony, Universal, Warner)
└──────┬───────┘
│
┌────────────┼────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Label A │ │ Label B │ │ Label C │ Division/imprint level
└────┬────┘ └────┬────┘ └─────────┘
│ │
┌────┼────┐ │
▼ ▼ ▼ ▼
┌───┐┌───┐┌───┐ ┌───┐
│Art││Art││Art│ │Art│ Artist level (current ArtistSpace)
│ 1 ││ 2 ││ 3 │ │ 4 │
└─┬─┘└─┬─┘└───┘ └─┬─┘
│ │ │
┌─┼─┐ │ ┌─┼─┐
▼ ▼ ▼ ▼ ▼
┌───┐┌───┐┌───┐ ┌───┐┌───┐
│Prj││Prj││Prj│ │Prj││Prj│ Project/Album level (current Project)
│ 1 ││ 2 ││ 3 │ │ 4 ││ 5 │
└─┬─┘└───┘└───┘ └─┬─┘└───┘
│ │
┌─┼─┬─┐ ┌─┼─┐
▼ ▼ ▼ ▼ ▼
┌──┐┌──┐┌──┐ ┌──┐┌──┐
│T1││T2││T3│ │T4││T5│ Track level (current Track)
└──┘└──┘└──┘ └──┘└──┘Management Control View — The Drill-Down Interface
This is a new dedicated view/route (not just a drawer) that allows users to navigate the full hierarchy with drill-down capability. Think of it as the "Finder" or "File Explorer" of Sonnance.
MANAGEMENT CONTROL — ROUTE: /manage
┌──────────────────────────────────────────────────────────────────────┐
│ │
│ BREADCRUMB: Organization > Label A > The Weeknd > After Hours │
│ ────────────────────────────────────────────────────────────────── │
│ │
│ ┌─ LEFT: HIERARCHY TREE ──────┐ ┌─ RIGHT: DETAIL PANEL ────────┐ │
│ │ │ │ │ │
│ │ ▼ Universal Music │ │ PROJECT: After Hours │ │
│ │ ▼ Universal Latin │ │ │ │
│ │ ▶ RELS B │ │ Status: Mixing (10/14) │ │
│ │ ▼ The Weeknd ● │ │ Portal: 72% complete │ │
│ │ ▶ Dawn FM │ │ Team: 6 collaborators │ │
│ │ ▼ After Hours ● │ │ Release: Apr 12, 2026 │ │
│ │ ○ Blinding Lights │ │ │ │
│ │ ● Save Your Tears │ │ ┌─ TRACKS ──────────────┐ │ │
│ │ ○ In Your Eyes │ │ │ # │ Track │ Status │ │ │
│ │ ○ Heartless │ │ │ 1 │ Blinding │ 🟢 ✓ │ │ │
│ │ ○ ... │ │ │ 2 │ Save Your │ 🟡 │ │ │
│ │ ▶ Chloe Harrison │ │ │ 3 │ In Your │ 🟢 ✓ │ │ │
│ │ ▶ Dua Lipa │ │ │ 4 │ Heartless │ 🔴 │ │ │
│ │ ▶ Republic Records │ │ │...│ │ │ │ │
│ │ │ │ └───────────────────────┘ │ │
│ │ [+ Add Level] │ │ │ │
│ │ │ │ [Open Portal →] │ │
│ └──────────────────────────────┘ └──────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────────┘Access & Permission Cascade for Management Control
| Level | Who can access | What they see |
|---|---|---|
| Organization | Org Owner/Admin only | All labels, all artists, full financials |
| Label | Label Owner/Admin + Org Admin | Artists under this label, label financials |
| Artist | Artist Space collaborators + label/org admins | Projects under this artist |
| Project | Project collaborators + inherited from artist | Tracks under this project |
| Track | Track collaborators + inherited from project | Track detail + Portal |
Management Control — Phasing
| Phase | Capability | Implementation |
|---|---|---|
| Phase 0-1 | Artist → Project → Track navigation (already exists via routes) | Current /artist/[id] → /project/[id] → track table |
| Phase 1 | Project-level Portal + aggregated metadata | New drawer variant, aggregation queries |
| Phase 1-2 | Artist-level Portal + catalog health | New drawer variant, dashboard widgets |
| Phase 2 | Team grouping (group artists into teams/divisions) | New Team entity, many-to-many ArtistSpace relationship |
| Phase 2-3 | Label entity + roster management | New Label entity with artists[], new routes |
| Phase 3 | Organization entity + full hierarchy tree + Management Control view | Full /manage route with drill-down UI |
| Phase 3+ | Genre tagging + genre analytics | Tag system, cross-artist genre grouping |
6. Comprehensive View Inventory
Every screen/state in the Sonnance platform, organized by information architecture depth.
Level 0: Platform Chrome (Always Present)
VIEW: Global Shell
ROUTE: (wraps all routes)
COMPONENTS: Layout (Beryllium default), Header, Sidebar, BottomBar, Player
┌─────────────────────────────────────────────────────┐
│ HEADER: Search | Notifications | Messages | Avatar │
├────┬────────────────────────────────────────────────┤
│ S │ │
│ I │ PAGE CONTENT │
│ D │ (varies by route) │
│ E │ │
│ B │ │
│ A │ │
│ R │ │
├────┴────────────────────────────────────────────────┤
│ BOTTOM BAR: [Cover|Waveform] [Controls] [Vol|FAB] │
└─────────────────────────────────────────────────────┘Level 1: Top-Level Views (Sidebar Items)
View 1.1: Home / Dashboard
ROUTE: / or /dashboard
PURPOSE: First screen after login. Adapts per actor type.
VARIANTS:
- Creator Home (artist/producer): Activity feed + Recent projects + Quick actions
- Management Home (manager/label): Command center + Pipeline + Financial summary
- Work Queue Home (engineer): Assigned tasks sorted by priority/due date
- Studio Home (studio owner): Calendar view + Active sessions
COMPONENTS:
- WelcomeHeader (greeting + date + actor-specific subtitle)
- NeedsAttentionWidget (actionable items requiring response)
- RecentProjectsGrid (card grid, 3-4 most recent)
- ActivityFeed (chronological log of team activity)
- QuickStatsBar (4 metric cards: active tracks, pending feedback, etc.)
--- Actor variants ---
- PipelineFunnel (manager/label: tracks by status across all projects)
- FinancialOverviewWidget (manager/label/investor: cash flow, revenue)
- RosterSnapshotWidget (manager/label: artist count, projects, attention needed)
- CalendarTodayWidget (studio: today's sessions)
- WorkQueueList (engineer: sorted by priority)View 1.2: Library
ROUTE: /library
PURPOSE: Browse all content the user has access to. Search + filter.
TABS: Artists | Projects | Tracks
COMPONENTS:
- LibraryTabs (Artists / Projects / Tracks)
- SearchBar (scoped to current tab)
- FilterBar (status, date range, collaborator, genre)
- ContentGrid (card layout) or ContentTable (list layout) — toggleView 1.3: Roster (NEW)
ROUTE: /roster
PURPOSE: People management — all collaborators, contacts, team members.
WIREFRAME ALIGNMENT: Sidebar item "Roster" from wireframe screenshot 1
COMPONENTS:
- RosterHeader ("Your Network" + search + filters)
- PeopleGrid: ContactID cards in grid layout
┌─────────────────────────────┐
│ ╭─────╮ │
│ │ Ava │ Chloe Harrison │
│ │ tar │ Vocalist · London │
│ ╰─────╯ ★ 4.5 │
│ │
│ Skills: Vocals, Piano │
│ Projects: 3 shared │
│ Last active: 2h ago │
│ │
│ [View Profile] [Message] │
└─────────────────────────────┘
- RosterFilters: Role, Status (active/inactive), Shared projects, Skills
- RosterTable: Alternative list view with columns (name, role, projects, last active, actions)View 1.4: Checklist (NEW)
ROUTE: /checklist
PURPOSE: Task management across all projects. Kanban or list view.
WIREFRAME ALIGNMENT: Sidebar item "Checklist" from wireframe screenshot 1
COMPONENTS:
- ChecklistHeader (view toggle: List | Kanban | Calendar)
- TaskList (filterable by project, assignee, due date, status)
- KanbanBoard (columns: To Do | In Progress | Review | Done)
- TaskCard:
┌─────────────────────────────────────────┐
│ ☐ Fill Label Copy for "Summer Vibes" │
│ 📂 After Hours │ 👤 Juan │ 📅 Mar 28│
│ Priority: 🔴 High │
└─────────────────────────────────────────┘
- Auto-generated tasks from Portal incomplete fields
("ISRC missing for 3 tracks in After Hours" → auto checklist item)View 1.5: Community (NEW)
ROUTE: /community
PURPOSE: Network discovery, public profiles, and social features.
WIREFRAME ALIGNMENT: Sidebar item "Community" from wireframe screenshot 1
COMPONENTS:
- DiscoveryFeed (public activity from followed artists/collaborators)
- SearchPeople (search by name, role, skills, genre, location)
- FeaturedProfiles (curated ContactID cards)
- MapView (optional: geographic discovery — "producers near me")View 1.6: Insights / Analytics
ROUTE: /insights
PURPOSE: Data intelligence — analytics dashboard.
WIREFRAME ALIGNMENT: "Charts" section from wireframe screenshot 1
COMPONENTS:
- InsightsHeader (date range picker, scope: All | Artist | Project)
- RevenueChart (cash flow chart — monthly/yearly toggle)
- EngagementMetrics (plays, comments, shares, downloads)
- CollaborationMap (network graph of who works with whom)
- PlatformDataCards (Spotify streams, YouTube views — from Data Integration)
- ExportButton (PDF/CSV reports)View 1.7: Calendar (NEW)
ROUTE: /calendar
PURPOSE: Timeline of deadlines, release dates, sessions, events.
COMPONENTS:
- CalendarView (Month | Week | Day | List toggle)
- EventCard (release date, session booking, deadline, milestone)
- EventDrawer (detail panel for selected event)
- SyncOptions (Google Calendar, Apple Calendar integration)View 1.8: Messages (Phase 1)
ROUTE: /messages
PURPOSE: Direct messaging and group conversations.
COMPONENTS:
- ConversationList (sidebar: contacts/groups with last message preview)
- ChatView (message thread with audio snippet sharing)
- AudioMessage (inline waveform: record → send → play)Level 2: Entity Views (Drill-Down)
View 2.1: Artist Space (Single Artist)
ROUTE: /artist/[artistId]
PURPOSE: Hub for a single artist — projects, bio, team.
WIREFRAME ALIGNMENT: Screenshot 2 (The Weeknd hero + projects grid)
┌────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ HERO BANNER IMAGE │ │
│ │ │ │
│ │ ╭────────╮ │ │
│ │ │ │ THE WEEKND [Artist Badge] │ │
│ │ │ Avatar │ R&B · Pop · Electronic │ │
│ │ │ (large)│ 2.1M monthly listeners │ │
│ │ ╰────────╯ │ │
│ └──────────────────────────────────────────────────┘ │
│ │
│ TABS: Projects | Activity | Team | Analytics │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────┐ │
│ │ [Cover] │ │ [Cover] │ │ [Cover] │ │ + │ │
│ │ Echoes │ │ monday │ │ Starboy │ │ New │ │
│ │ of Sil. │ │ │ │ │ │ Proj │ │
│ │ EP · 5 │ │ LP · 12 │ │ Sngl· 1 │ │ │ │
│ │ 🔵 act. │ │ 🔵 act. │ │ │ │ │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────┘ │
│ │
└────────────────────────────────────────────────────────────┘
FLOATING TOOLBAR (WAVIC Bar):
┌────────────────────────────────────────────────────────────┐
│ [☰] [WAVIC logo] [Share] [Upload] [+ New] │
└────────────────────────────────────────────────────────────┘
COMPONENTS:
- ArtistHero (banner + avatar + name + genre + stats)
- ArtistBadge (role chip: "Artist", "Producer", "Label")
- ProjectGrid (card grid with covers, type badges, activity dots)
- AddProjectCard (+ button card)
- ArtistTabs (Projects | Activity | Team | Analytics)
- ArtistPortalButton ("View Artist Portal" → opens artist-level portal drawer)View 2.2: Project View (Single Project)
ROUTE: /project/[projectId]
PURPOSE: All tracks in a project, displayed as a table.
┌────────────────────────────────────────────────────────────┐
│ ← Back to Artist │ PROJECT: IAM │ Type: Single │
│ │
│ TABS: Tracks | Details | Team | Activity │
│ │
│ ┌────────────────────────────────────────────────────┐ │
│ │ # │ ● │ Title │ Modified │ ↓ │ ⋯ │ │
│ │────┼───┼─────────────────┼──────────┼────┼────────│ │
│ │ 1 │ 🟢│ Summer Vibes │ 2h ago │ ↓ │ ⋯ │ │
│ │ │ │ v3 · PORTALS │ │ │ │ │
│ │────┼───┼─────────────────┼──────────┼────┼────────│ │
│ │ 2 │ 🟡│ Night Drive │ 5h ago │ ↓ │ ⋯ │ │
│ │ │ │ v1 · PORTALS │ │ │ │ │
│ │────┼───┼─────────────────┼──────────┼────┼────────│ │
│ │ 3 │ 🔴│ Sunset │ 2d ago │ ↓ │ ⋯ │ │
│ │ │ │ v1 · PORTALS │ │ │ │ │
│ └────────────────────────────────────────────────────┘ │
│ │
│ [+ Add Track] │ PROJECT PORTAL: 37% complete 🟡 │
│ │
└────────────────────────────────────────────────────────────┘
COMPONENTS:
- ProjectHeader (name, type badge, back navigation)
- ProjectTabs (Tracks | Details | Team | Activity)
- TrackTable (via getTrackWidgetColumns — existing)
- PortalsButton (per-row — existing)
- ProjectPortalSummary (aggregated metadata health bar — new)
- AddTrackButton (existing)View 2.3: Track / Wave View (Single Track)
ROUTE: /t/[trackId]
PURPOSE: Full track detail — waveform, comments, sections, discussions.
┌────────────────────────────────────────────────────────────┐
│ ← Back to Project │ TRACK: Summer Vibes │ v3 │
│ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ WAVE HEADER │ │
│ │ [Cover] Summer Vibes │ 🟢 Mixing │ v3/3 │ │
│ └──────────────────────────────────────────────────┘ │
│ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ ┌─ COMMENT CAROUSEL ─────────────────────────┐ │ │
│ │ │ 💬 "Love the drop at 1:32" — Juan, 2h ago │ │ │
│ │ │ ◀ 1/5 ▶ │ │ │
│ │ └────────────────────────────────────────────┘ │ │
│ │ │ │
│ │ ═══════════════════════════════════════════════ │ │
│ │ [ || WAVEFORM (teal bars, seek, markers) ] │ │
│ │ ═══════════════════════════════════════════════ │ │
│ │ [Section 1 ][ Section 2 ][ Section 3 ] │ │
│ │ │ │
│ │ [Add Comment] [Add Section] │ │
│ └──────────────────────────────────────────────────┘ │
│ │
├────────────────────────────────────────────────────────────┤
│ FEEDBACK PANEL (portaled to bottom bar comments tray) │
│ TABS: Comments (12) | Sections (3) │
│ ┌──────────────────────────────────────────────────┐ │
│ │ 0:32 Juan: "This 808 hits hard" │ │
│ │ 1:15 Maria: "Can we try a different reverb?" │ │
│ │ 2:45 You: "Fixed in v3" │ │
│ └──────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────────┘View 2.4: Track Portal View (Single Track — Portal Drawer)
ROUTE: /project/[id]?portals=[trackId] (query param, not separate route)
PURPOSE: Metadata management for a single track.
WIREFRAME ALIGNMENT: Screenshot 3 (Team, Status, Label Copy, versions)
COMPONENT: PortalsDrawer (right-side, 70% width)
DESCRIBED IN: Section 4 above (current Portals implementation)Level 3: Overlay / Modal Views
View 3.1: ContactID Modal
TRIGGER: Profile dropdown → "My ContactID" (or Roster → view ContactID)
TYPE: Modal (centered, with backdrop blur)
DESCRIBED IN: Doc 16, Section 1View 3.2: Share Modal
TRIGGER: Share button on any entity (Artist, Project, Track)
TYPE: Modal
COMPONENTS:
- ShareLink (copy URL)
- InviteByEmail (email + role selector)
- ShareAsContactID (if sharing self)
- SharePermissions (Viewer / Editor / Admin)View 3.3: Upload Modal
TRIGGER: FAB Upload button, or "+" in track table
TYPE: Modal with drag-and-drop zone
COMPONENTS:
- DropZone (drag files or click to browse)
- FileList (queued files with progress bars)
- DestinationPicker (which project/track to upload to)View 3.4: Notification Panel
TRIGGER: 🔔 bell icon in header
TYPE: Dropdown panel (right-aligned from bell icon)
WIREFRAME ALIGNMENT: Notifications list with track names, version indicators, colored dots
COMPONENTS:
- NotificationList (grouped by: Today, Yesterday, Earlier)
- NotificationItem:
┌────────────────────────────────────────────────┐
│ [Cover] Track Name / Version(s) 🟢🟠 │
│ Artist Space · 2h ago [Mark read] │
└────────────────────────────────────────────────┘
- ClearAll / MarkAllRead buttonsLevel 4: System Views
View 4.1: Onboarding
ROUTE: /onboarding
PURPOSE: New user setup flow (no sidebar/header)
SCREENS:
1. Welcome → Role selection (Actor type — drives nav preset)
2. Create first Artist Space (or skip → join via invite)
3. Upload first track (or skip)
4. Invite collaborator (or skip)
5. Dashboard tour (interactive tooltips on sidebar items)View 4.2: Account Settings
ROUTE: /settings
TABS (current + proposed):
- My Details (existing)
- ContactID (NEW)
- Profile (uncomment)
- Subscription (existing)
- Usage (existing)
- Team (NEW — manage team members)
- Notifications (uncomment — preferences)
- Integrations (NEW — Spotify, YouTube, DAW connections)
- Appearance (existing — layout/theme)View 4.3: Public Profile (External)
ROUTE: /u/[username] or /@[username]
PURPOSE: Public-facing artist/professional page. Accessible without login.
COMPONENTS:
- ContactID card (large format)
- Public track player (shared tracks only)
- Credits/collaborations list
- "Get in Touch" button (contact form or platform DM)Complete View Map
SONNANCE VIEW MAP — 33 VIEWS
══════════════════════════════════════════════════════════════
LEVEL 0: CHROME (always present)
└─ Global Shell (header + sidebar + bottom bar + player)
LEVEL 1: TOP-LEVEL (sidebar links) — 8 views (creation-side)
├─ 1.1 Home / Dashboard /dashboard (actor-adaptive)
├─ 1.2 Library /library (tabs: artists/projects/tracks)
├─ 1.3 Roster /roster (people grid + ContactID cards)
├─ 1.4 Checklist /checklist (tasks + Kanban + auto-generated)
├─ 1.5 Community /community (discovery + social feed)
├─ 1.6 Insights /insights (analytics + charts + data)
├─ 1.7 Calendar /calendar (timeline + events + releases)
└─ 1.8 Messages /messages (DM + groups + audio messages)
LEVEL 1B: TOP-LEVEL (distribution-side — actor-adaptive) — 6 views
├─ 1.9 Submission Inbox /submissions (curator: incoming pitches)
├─ 1.10 Promo Queue /promo (radio: incoming promos + rotation)
├─ 1.11 Catalog (Publishing) /catalog (publisher: compositions + splits)
├─ 1.12 Catalog Search /catalog-search (sync: search by mood/genre/tempo)
├─ 1.13 Campaigns /campaigns (PR: release campaign management)
└─ 1.14 Pipeline /pipeline (songwriter: demo → pitch → placed)
LEVEL 2: ENTITY VIEWS (drill-down) — 4 views
├─ 2.1 Artist Space /artist/[id] (hero + projects grid)
├─ 2.2 Project View /project/[id] (tracks table + project portal)
├─ 2.3 Track / Wave View /t/[id] (waveform + comments + sections)
└─ 2.4 Track Portal ?portals=[id] (metadata drawer)
LEVEL 3: OVERLAYS (modal/drawer) — 5 views
├─ 3.1 ContactID Modal (profile card + QR + share)
├─ 3.2 Share Modal (link + email invite + permissions)
├─ 3.3 Upload Modal (drag-drop + destination picker)
├─ 3.4 Notification Panel (grouped notifications + dots)
└─ 3.5 Project Portal Drawer (aggregated metadata — NEW)
3.6 Artist Portal Drawer (catalog health — NEW)
3.7 Label Portal Drawer (organization overview — NEW)
3.8 Pitch/Press Kit Modal (auto-generated from Portals — NEW)
LEVEL 4: SYSTEM (full-page, special) — 4 views
├─ 4.1 Onboarding /onboarding (role select + setup wizard)
├─ 4.2 Account Settings /settings (tabs: details/subscription/etc.)
├─ 4.3 Public Profile /u/[username] (external, no auth required)
└─ 4.4 Management Control /manage (hierarchy tree + drill-down)
— Phase 2-3
──────────────────────────────────────────────────────────────
TOTAL: 33 distinct views (12 implemented, 21 new)
- Creation-side: 27 views (original)
- Distribution-side: 6 new top-level views + Pitch Kit modal
══════════════════════════════════════════════════════════════7. Navigation Options (Extended Beyond Doc 16)
Doc 16 proposed 3 options (Spotify-style, Notion-style, Apple Music). Here are 3 additional options informed by the actor analysis and wireframe review.
Option 4: "OS-Style" — Adaptive Sidebar + Command Bar (Recommended)
Inspired by macOS/Windows with Spotlight/Command Palette. The sidebar adapts per actor, and a central command bar provides instant access to everything.
DESKTOP
┌─────────────────────────────────────────────────────────────┐
│ [⌘K] ┌─ Quick search: artists, tracks, people, actions ─┐ │
│ └──────────────────────────────────────────────────┘ │
│ 🔔(3) 💬(2) [Avatar▾] │
├────┬────────────────────────────────────────────────────────┤
│ │ │
│ 🏠 │ MAIN CONTENT │
│ 👥 │ (actor-adaptive dashboard) │
│ 📂 │ │
│ ☑️ │ │
│ │ │
│ ── │ │
│ ⋯ │ ← "More" (expand to show secondary items) │
│ │ │
│ ── │ │
│ 🗑 │ │
│ ⚙ │ │
├────┴────────────────────────────────────────────────────────┤
│ [▶] [Cover] Track Name ═══●══════ 2:34 [🔊] [WAVIC] │
└─────────────────────────────────────────────────────────────┘
⌘K COMMAND BAR (opens centered overlay):
┌────────────────────────────────────────────────┐
│ 🔍 Type a command or search... │
│ ───────────────────────────────────────────── │
│ RECENT │
│ ♪ Summer Vibes — After Hours │
│ 📂 IAM — The Weeknd │
│ 👤 Juan Martinez — Producer │
│ ───────────────────────────────────────────── │
│ ACTIONS │
│ + New Artist Space │
│ ↑ Upload File │
│ 🔗 Share Current Page │
│ 📊 Open Insights │
│ ⚙ Settings │
└────────────────────────────────────────────────┘Why this option: Musicians and producers increasingly use ⌘K / Ctrl+K command bars (Figma, Notion, Linear, Vercel). It provides instant access without cluttering the sidebar. The sidebar stays clean (4 primary + system), while the command bar surfaces everything else. Best of both worlds.
Option 5: "Dashboard-First" — Tab Bar + Contextual Sidebar
No persistent left sidebar. Instead, a top tab bar for primary navigation, and a contextual right sidebar that appears when drilling into entities.
DESKTOP
┌────────────────────────────────────────────────────────────────┐
│ SONNANCE │ Dashboard │ Library │ Projects │ Insights │ More │
│ 🔔 💬 [Avatar ▾] │
├────────────────────────────────────────────────────────────────┤
│ │
│ MAIN CONTENT │
│ (full width — more room for data) │
│ │
│ ┌──────────────────┐ │
│ │ CONTEXTUAL │ │
│ │ SIDEBAR │ │
│ │ (appears when │ │
│ │ clicking entity)│ │
│ │ │ │
│ │ • Portal info │ │
│ │ • Team │ │
│ │ • Activity │ │
│ └──────────────────┘ │
│ │
├────────────────────────────────────────────────────────────────┤
│ [▶] Track Name ═══════●══════ 2:34/4:12 [🔊] [WAVIC] │
└────────────────────────────────────────────────────────────────┘Why this option: Maximizes content area. Good for data-heavy views (Insights, Management Control, Roster tables). The Label/Manager actor type benefits most from this layout. Similar to Google Analytics, Hubspot, or Stripe dashboard.
Option 6: "Hybrid Contextual" — Left Rail + Top Context Tabs
Minimal icon rail (like current Beryllium) but enhanced with context-aware tabs that appear below the header when inside an entity.
DESKTOP — inside Artist Space
┌────┬───────────────────────────────────────────────────────┐
│ │ ← The Weeknd 🔔 💬 [Avatar ▾] │
│ ├───────────────────────────────────────────────────────┤
│ 🏠 │ [Projects] [Activity] [Team] [Analytics] [Portal] │
│ 📚 ├───────────────────────────────────────────────────────┤
│ 📂 │ │
│ 📊 │ PROJECTS GRID │
│ │ (or Activity, Team, etc. based on tab) │
│ ── │ │
│ 👥 │ │
│ ☑️ │ │
│ 📅 │ │
│ │ │
│ ── │ │
│ 🗑 │ │
│ ⚙ │ │
├────┴───────────────────────────────────────────────────────┤
│ [▶] Track Name ═══════●══════ 2:34 [🔊] [WAVIC] │
└───────────────────────────────────────────────────────────┘
DESKTOP — inside Project
┌────┬───────────────────────────────────────────────────────┐
│ │ ← IAM (The Weeknd) 🔔 💬 [Avatar ▾] │
│ ├───────────────────────────────────────────────────────┤
│ 🏠 │ [Tracks] [Details] [Team] [Activity] [Portal] │
│ 📚 ├───────────────────────────────────────────────────────┤
│ 📂 │ │
│ 📊 │ TRACKS TABLE │
│ │ (or Details, Team, etc.) │
│ │ │
├────┴───────────────────────────────────────────────────────┤
│ [▶] Track Name ═══════●══════ 2:34 [🔊] [WAVIC] │
└───────────────────────────────────────────────────────────┘Why this option: Maintains the familiar sidebar but adds contextual depth without navigation confusion. The context tabs only appear when inside an entity (artist/project/track), providing drill-down navigation without changing the global sidebar. This is how many music production tools work (Logic Pro, Ableton — sidebar for navigation + top tabs for context).
Extended Navigation Comparison (All 6 Options)
| Criteria | Opt 1 Spotify | Opt 2 Notion | Opt 3 Apple | Opt 4 OS-Style | Opt 5 Dash-First | Opt 6 Hybrid |
|---|---|---|---|---|---|---|
| Actor adaptability | ★★★☆ | ★★★★ | ★★☆☆ | ★★★★★ | ★★★★☆ | ★★★★☆ |
| Scalability | ★★★★ | ★★★★★ | ★★★☆ | ★★★★★ | ★★★★☆ | ★★★★★ |
| Mobile parity | ★★★★★ | ★★★★ | ★★★★ | ★★★★★ | ★★★★ | ★★★★☆ |
| Music aesthetic | ★★★★★ | ★★★☆ | ★★★★ | ★★★★ | ★★★☆ | ★★★★★ |
| Power user friendly | ★★★★ | ★★★★★ | ★★★☆ | ★★★★★ | ★★★★ | ★★★★★ |
| Build complexity | Low | Medium | Medium | Medium | Medium | Low-Med |
| Closest to current | ★★★★★ | ★★★☆ | ★★☆☆ | ★★★★☆ | ★★☆☆ | ★★★★★ |
| Hierarchy support | ★★★☆ | ★★★★★ | ★★★☆ | ★★★★ | ★★★★ | ★★★★★ |
| WOW factor | ★★★★ | ★★★☆ | ★★★★ | ★★★★★ | ★★★☆ | ★★★★ |
Recommendation: Option 4 (OS-Style) + Option 6 (Hybrid Contextual) Combined
The strongest architecture combines:
- Option 4's adaptive sidebar + ⌘K command bar for global navigation and discoverability
- Option 6's context tabs for entity drill-down (when inside Artist/Project/Track)
- Mobile: 5-tab bottom bar (from Doc 16) with ⌘K accessible via search icon
This creates a true "operating system" feel:
- Sidebar = Dock/Start Menu (persistent, customizable)
- ⌘K = Spotlight/Search (instant access to anything)
- Context Tabs = Window tabs (deeper navigation within context)
- Bottom Bar = Player + Actions (always present)
8. The Floating Toolbar (WAVIC Bar)
Current Implementation
The WAVIC bar is a bottom toolbar that:
- Shows the WAVIC logo + contextual action buttons when no audio is playing
- Transforms into a 3-column player layout (cover+waveform | controls | volume+FAB) when audio is active
Proposed Enhancement: Smart Context Actions
The WAVIC bar should show different actions based on the current view AND actor type:
| Current View | Artist Actions | Producer Actions | Manager Actions | Curator Actions | Sync Agent Actions | PR/Publicist Actions |
|---|---|---|---|---|---|---|
| Dashboard | Upload, New Space | Upload, New Space | View Reports | Filter Inbox | New Search | New Campaign |
| Artist Space | Share, Upload, New Project | Share, Upload, New Project | Share, View Portal | Save Artist | Shortlist Artist | Build Press Kit |
| Project | Upload Version, Share | Upload, New Track, Share | Approve, View Portal, Export | Preview, Save | Shortlist, License | Send to Outlets |
| Track/Wave | Comment, Share | Upload Version, Comment | Approve, Share, Export | Save to Playlist, Share | Shortlist, License, Download Stems | Add to Press Kit |
| Roster | — | Add Contact | Add Contact, Export | — | Contact Rights Holder | Add Outlet |
| Insights | — | — | Export, Share Report | Playlist Analytics | Placement Report | Coverage Report |
| Submissions/Inbox | — | — | — | Accept, Pass, Save | — | — |
| Catalog Search | — | — | — | — | Shortlist, Request License | — |
WAVIC Bar States
STATE 1: No audio playing (default)
┌────────────────────────────────────────────────────────────┐
│ [☰ Menu] [WAVIC logo] [Action1] [Action2] [+] │
└────────────────────────────────────────────────────────────┘
STATE 2: Audio playing (player mode)
┌────────────────────────────────────────────────────────────┐
│ [Cover][Name][═══●═══] │ [◀][▶][▶▶] │ [🔊──][WAVIC+FAB] │
└────────────────────────────────────────────────────────────┘
STATE 3: Audio playing + actions open (FAB expanded)
┌────────────────────────────────────────────────────────────┐
│ [Cover][Name][═══●═══] │ [◀][▶][▶▶] │ [🔊──][WAVIC ▲] │
│ ┌─────────────────┐│
│ │ ↑ Upload ││
│ │ 🔗 Share ││
│ │ + New Track ││
│ └─────────────────┘│
└────────────────────────────────────────────────────────────┘
MOBILE STATE (compact):
┌──────────────────────────────────────┐
│ [Cover] Track Name ● 2:34 [▶] │ ← Tap to expand
├──────────────────────────────────────┤
│ 🏠 📚 [+] 🔔 👤 │ ← Bottom tab bar
└──────────────────────────────────────┘9. Design Decision Matrix
Critical Decisions to Make
| Decision | Options | Recommended | Reasoning |
|---|---|---|---|
| Navigation Model | 6 options above | Opt 4+6 (OS + Hybrid) | Actor-adaptive + contextual + command bar = true OS feel |
| Sidebar Behavior | Fixed / Collapsible / Drawer | Collapsible icon rail → expand on hover | Clean default, power when needed |
| Actor Adaptation | Onboarding-set / Auto-detect / Manual | Onboarding-set + customizable | Explicit choice + flexibility |
| Portal Scope | Track-only / Track+Project / Full hierarchy | Track+Project (Phase 1), Full (Phase 2+) | Incremental value delivery |
| Management Control | Drawer / Page / Both | Page (/manage) with Portal drawers | Hierarchy needs space |
| Roster Data Source | Collaborators-only / Extended | Collaborators + manually added contacts | Build network beyond platform users |
| Checklist Generation | Manual only / Auto from Portal gaps | Both (auto + manual) | Auto-generated tasks from incomplete Portals is a killer feature |
| Mobile Nav | 5-tab bar | Home / Library / Create / Activity / Profile | iOS HIG compliant, creator-optimized |
| Command Bar | Yes / No | Yes (⌘K) | Essential for power users, discovery |
| Context Tabs | Above content / Below header | Below header (sub-nav bar) | Clear hierarchy, doesn't compete with sidebar |
Implementation Priority by View
| Priority | View | Dependencies | Effort |
|---|---|---|---|
| P0 (Now) | Expand current sidebar (uncomment Trash, Transfers, Storage) | None | 1 day |
| P0 | Add ⌘K command bar skeleton | Search module already exists | 3 days |
| P1 | Actor-adaptive sidebar (onboarding role → nav preset) | Onboarding flow, user preferences | 1 week |
| P1 | Roster view (basic people grid from collaborators data) | Collaboration data already exists | 1 week |
| P1 | Checklist view (basic task list, manual only) | New task entity | 1 week |
| P1 | Project-level Portal (aggregated metadata) | Portals already implemented at track level | 1 week |
| P1 | Context tabs (sub-nav for artist/project/track views) | Route structure exists | 3 days |
| P1 | Notification panel redesign (wireframe alignment) | Notification system exists | 3 days |
| P2 | Insights dashboard (basic charts) | Analytics data collection | 2 weeks |
| P2 | Artist-level Portal | Project-level portal done first | 1 week |
| P2 | Calendar view | New event/deadline entity | 2 weeks |
| P2 | Community view (discovery) | Public profiles, ContactID | 2 weeks |
| P2 | Management Control (hierarchy tree + drill-down) | Team/Label entities | 3 weeks |
| P2 | Messages / DM system | WebSocket already integrated | 3 weeks |
| P3 | Auto-generated checklist from Portal gaps | Project Portal + rules engine | 1 week |
| P3 | Label/Organization level Portals | Full hierarchy entities | 2 weeks |
| P3 | Map-based discovery (Community) | Location data, map library | 2 weeks |
| P3+ | Full Management Control with financial analytics | Data Integration layer | 4 weeks |
Appendix A: Wireframe-to-Architecture Mapping
| Wireframe Element | Document Section | Implementation Status |
|---|---|---|
| Sidebar: Home | View 1.1 | Exists (needs actor-adaptive variants) |
| Sidebar: Roster | View 1.3 | New — planned P1 |
| Sidebar: Checklist | View 1.4 | New — planned P1 |
| Sidebar: Community | View 1.5 | New — planned P2 |
| ContactID Card (Chloe) | Doc 16 Section 1, View 3.1 | New — planned P0-1 |
| Notifications (track versions, color dots) | View 3.4 | Exists (needs wireframe redesign) |
| Charts / Cash Flow | View 1.6 | New — planned P2 |
| Artist Space (Weeknd hero) | View 2.1 | Exists (hero + grid implemented) |
| Project cards with type badges (EP/Single/LP) | View 2.1 (ProjectGrid) | Exists |
| Activity dots on project cards | View 2.1 (ProjectGrid) | Exists (blue dots) |
| Floating WAVIC toolbar | Section 8 | Exists (needs context enhancement) |
| Track Portal (Team, Status, Label Copy) | View 2.4, Section 4 | Exists (fully implemented) |
| Version cards (audio file + comment count) | View 2.4 (within Portal) | Exists |
| Bottom player bar | View 6.0 (Chrome) | Exists |
Appendix B: New Entities Required
| Entity | Purpose | Phase | Schema Sketch |
|---|---|---|---|
| Team | Group artists/collaborators into divisions | P2 | { name, members[], artistSpaces[], organization? } |
| Label | Music label / imprint | P2-3 | { name, artists[], team[], catalog: {}, financials: {} } |
| Organization | Parent company / conglomerate | P3 | { name, labels[], settings: {} } |
| Task | Checklist items (manual + auto-generated) | P1 | `{ title, assignee, dueDate, status, source: 'manual' |
| Event | Calendar entries (sessions, releases, deadlines) | P2 | `{ title, date, type: 'release' |
| Message | DM / group messages | P2 | { sender, recipients[], content, audioUrl?, thread? } |