Repository navigation
collection landing
github-actions[bot] edited this page Oct 12, 2026
·
2 revisions
-
Route:
/c/:slug(legacy/collections/:slug) -
Host Component:
apps/playground/app/canvas/MarkdownCanvasPage.tsx/CollectionDetailPage -
Domain Models:
Collection,Page,Note,Notesource (rawContent + occurrence map; saved states inBlockRevision)
-
SplitCanvasTemplate(apps/playground/app/templates/SplitCanvasTemplate.tsx). Desktop split-pane container. -
CanvasProsePanel(apps/playground/app/components/organisms/canvas/CanvasProsePanel.tsx). Renders narrative collection markdown. -
CanvasPanelContent(apps/playground/app/canvas/CanvasPanelContent.tsx). Interactive right panel containing CodeMirror editor and timer preview. -
CollectionWorkoutsList(apps/playground/app/views/queriable-list/CollectionWorkoutsList.tsx). Searchable list of member workouts.
-
seedContent(apps/playground/src/services/content/seedContent.ts). Loads collectionREADME.mdand workout definitions. -
useCanvasRuntime(apps/playground/app/hooks/useCanvasRuntime.ts). Coordinates workout execution directly from canvas cards.
-
Split Pane Presentation:
- Left Prose Pane (60% width): Narrative description, difficulty badge, category chips, and embedded workouts list with instant search filter.
- Right Interactive Pane (40% width): Sticky interactive CodeMirror preview showing the currently selected workout's raw Whiteboard script.
- Header: Sticky collection title bar with "Start Workout" and "Add to Today" buttons.
- TOC Rail: Chapter and section links tracking scroll progress through the collection.
- Stacked Layout: Split pane collapses to a single vertical scroll stream.
- Prose First: Description and README appear at the top, followed by a filterable workout list.
- Modal Preview: Tapping a workout opens the interactive preview and runnable controls in a bottom sheet rather than a side pane.
- Thumb Dock: Primary FAB launches the featured or first workout in the collection.
-
Dynamic Content Ownership:
- Clicking any workout item updates the CodeMirror editor pane without full-page navigation.
- The right pane reflects the active workout's live state, while URL updates to reflect the active selection.