Skip to content

docs(academy): Academy learning surface#5170

Closed
ouiliame wants to merge 121 commits into
simstudioai:stagingfrom
ouiliame:feat/docs-academy
Closed

docs(academy): Academy learning surface#5170
ouiliame wants to merge 121 commits into
simstudioai:stagingfrom
ouiliame:feat/docs-academy

Conversation

@ouiliame

@ouiliame ouiliame commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Introduces the Academy — a video-first learning surface for Sim — into the docs site.

  • Academy section in the docs: navbar tab + dedicated academy tree with a course layout (preview cards, chapters, "what you'll learn", progress).
  • Self-hosted video player (VideoPlaceholder) streaming MP4 from Vercel Blob — no YouTube. Chapter rows seek the player (academy:seek), with real timestamps per video.
  • Sectioned IA: Get Started → Workflows (Intro, Logs, Branching, Loops & Parallel, Subworkflows, Deployment) → Agents → Tables → Files → Knowledge Bases.
  • Block diagrams (WorkflowPreview) embedded in every lesson, and a "Related documentation" section linking each lesson into the reference docs.

Scope & future home

This PR lands the Academy in the docs as its preliminary home. It is not necessarily the long-term home:

  • We're exploring moving the lesson content into a separate CMS for easier authoring/management.
  • Longer term the Academy may live on its own surface (e.g. academy.sim.ai) rather than under the docs.

Notes

  • Docs-only change; no runtime/product/auth paths touched.
  • type-check + build green; all lessons render locally. Branch is up to date with staging.
  • The Logs lesson hero is a "Coming soon" placeholder until its video is recorded.

waleedlatif1 and others added 30 commits April 3, 2026 23:30
…ership workflow edits via sockets, ui improvements
…ration, signup method feature flags, SSO improvements
* feat(posthog): Add tracking on mothership abort (simstudioai#4023)

Co-authored-by: Theodore Li <theo@sim.ai>

* fix(login): fix captcha headers for manual login  (simstudioai#4025)

* fix(signup): fix turnstile key loading

* fix(login): fix captcha header passing

* Catch user already exists, remove login form captcha
…nts, secrets performance, polling refactors, drag resources in mothership
…endar triggers, docs updates, integrations/models pages improvements
…mat, logs performance improvements

fix(csp): add missing analytics domains, remove unsafe-eval, fix workspace CSP gap (simstudioai#4179)
fix(landing): return 404 for invalid dynamic route slugs (simstudioai#4182)
improvement(seo): optimize sitemaps, robots.txt, and core web vitals across sim and docs (simstudioai#4170)
fix(gemini): support structured output with tools on Gemini 3 models (simstudioai#4184)
feat(brightdata): add Bright Data integration with 8 tools (simstudioai#4183)
fix(mothership): fix superagent credentials (simstudioai#4185)
fix(logs): close sidebar when selected log disappears from filtered list; cleanup (simstudioai#4186)
v0.6.46: mothership streaming fixes, brightdata integration
ouiliame and others added 5 commits June 17, 2026 17:54
…he TOC

Chapter rows wrapped instead of truncating (items-start, break-words) so longer
titles aren't clipped. Workflows lesson set full:true so the fumadocs 'On this
page' TOC is hidden — the Chapters panel was competing with it and clipping at
the right edge. Chapters is now the sole right-side panel.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ody full-width

- page.tsx: for slug[0] === 'academy', disable the "On this page" TOC and set
  full width. The video hero/content gets the room; normal docs keep their TOC.
- Lesson layout: chapters panel now sits only in the top section beside the
  intro + "What you'll learn" (grid items-start, so it takes only the height it
  needs, no longer stretching to the bottom). The body sections flow full-width
  below the grid so their text wraps across the page instead of a narrow column.
- VideoChapters: titles wrap (items-start, break-words) rather than truncate.

Workflows is the template; rolling out to the other lessons once confirmed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…my video URLs

Applied the Workflows template (full-width hero → intro + "What you'll learn" +
Chapters → full-width body) to every remaining lesson, written from the
recording outlines:

- Agents: an AI agent IS a workflow; the Agent block as a programmatic chat;
  tools and skills; making a deterministic workflow agentic; composing
  intelligence (scaling outro).
- Knowledge Bases: the context problem; documents + connectors; auto
  index/embed/chunks; search by meaning + similarity; grounding with citations.
- Tables: spreadsheet shape; business work as operations over data; workflow
  columns at scale.
- Files: why files exist; consume and produce; familiar automatable examples.
- Use cases (Slack triage, document extraction, monitoring & research, sales
  enrichment): hype scaffolds with build-step chapters, each noting the
  foundations it composes.

Also fixed getAssetUrl: absolute URLs now pass through instead of getting a
leading slash, so the blob-hosted academy videos resolve (was src="/https://…").

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
VideoPlaceholder now always renders the design-system preview card and takes a
`youtube` prop (id or URL). With a video set, the play button is active and
loads an inline youtube-nocookie embed on click; without one, the card reads
"Coming soon" with a muted play button. No more inline blob videos / autoplay.

Dropped the blob academy-preview srcs from every lesson — they're preview cards
until each gets its `youtube="..."`. Stops the 01-intro video from autoplaying
on What is Sim.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 22, 2026

Copy link
Copy Markdown

@ouiliame is attempting to deploy a commit to the Sim Team on Vercel.

A member of the Team first needs to authorize it.

…ted docs

- VideoPlaceholder plays self-hosted MP4 (Vercel Blob via getAssetUrl) instead
  of YouTube; resolves absolute URLs, /static paths, and bare asset names
- Restructure foundations into sections: Get Started, Workflows (intro,
  branching, loops, subworkflows), Agents, Tables, Files, Knowledge Bases —
  each topic a folder with an intro page; eyebrows match their section
- Wire all uploaded lesson videos; scaffold the three Workflows sub-lessons
- Add a "Related documentation" section to every lesson linking the reference
  docs; fix in-body cross-links broken by the folder move

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs Ready Ready Preview, Comment Jun 22, 2026 11:33pm

Request Review

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ows, deployment)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ouiliame ouiliame marked this pull request as ready for review June 23, 2026 23:24
@greptile-apps

greptile-apps Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Too many files changed for review. (117 files found, 100 file limit)

@ouiliame ouiliame marked this pull request as draft June 23, 2026 23:24
@cursor

cursor Bot commented Jun 23, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Docs-site and content-only changes (navbar, layout, MDX, static video URLs); no product runtime, auth, or data paths. Main risk is link/URL drift and size of the content tree, not production behavior.

Overview
Adds a video-first Academy to the docs app: a navbar Academy tab, a sectioned course tree (Get Started → Workflows → Agents → Tables → Files → Knowledge Bases → use cases), and lesson pages built from shared UI.

Lesson experience: VideoPlaceholder plays self-hosted MP4s (Blob CDN or absolute URLs); VideoChapters seeks via academy:seek; WhatYouWillLearn and optional CourseProgress / chapter rails layout lessons. Academy routes use full-width layout and disable the page TOC so heroes and in-page chapters have room. getAssetUrl now passes through https:// sources unchanged.

Content: Publishes core Academy MDX (workflows, agents, tables, files, KBs, use cases) with embedded WorkflowPreview diagrams and Related documentation links into reference docs. A large academy/drafts/ tree holds future modules (Chat, deployment, partner cert, etc.). Internal planning artifacts (.plans/integrations-ia.md, DOCS_PLAN.md, visuals-manifest.md) document broader docs IA and screenshot backlog. .gitignore adds **/.source/ for Fumadocs-generated dirs.

Reviewed by Cursor Bugbot for commit 6c0194c. Bugbot is set up for automated code reviews on this repo. Configure here.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit a994418. Configure here.

Comment thread apps/docs/components/ui/video-chapters.tsx
ouiliame and others added 5 commits June 24, 2026 13:53
Each academy lesson had video + prose + objectives but no diagram. Adds a live
<WorkflowPreview> (the docs' block-canvas renderer — same visual language as the
explainer videos) to all 13 lessons, using the curated example that matches each
topic: workflows/intro→CLASSIFY_REPLY, branching→CONDITION_ROUTE, loops→LOOP,
subworkflows→WORKFLOW_CALL, deployment→RESPONSE_API, agents→CLASSIFY,
tables→TABLE_ENRICH, files→FILE_SUMMARY, knowledge-bases→SUPPORT_KB, and the four
use-cases (ROUTER_TRIAGE, FILE_SUMMARY, API_FETCH, TABLE_ENRICH). Additive MDX
only; placed after each lesson's first explanatory section with a short lead-in.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…scenes

Two fixes to the lesson VideoChapters:
- Seeking: the chapter rows were inert buttons. VideoChapters (now a client
  component) dispatches an `academy:seek` event with the parsed time; the
  VideoPlaceholder video listens, starts playback if needed, and jumps there
  (via a ref + pending-seek applied on loadedmetadata).
- Timestamps: chapters were hand-guessed and didn't match the videos. Every
  lesson's chapters are now derived from its render — one chapter per scene at
  (intro duration + the scene's manifest `at` time), with an Introduction
  chapter at 0:00. Times now line up with the actual stitched-with-intro video.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Chapter titles were raw internal scene names ("Swap the decider", "KB
  appears", "Two schedules one shape") — rewrote all of them across the 8 video
  lessons into clean, learner-facing labels (times unchanged).
- Removed the WorkflowPreview diagrams from the four use-case lessons: they used
  generic stand-in example workflows that misrepresented the specific use case.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
New workflows/logs lesson: every run leaves a complete record, and debugging is
reading that record backwards from the symptom to its source. Prose + objectives
+ a ROUTER_TRIAGE diagram + chapters (ready for the render). Video is "Coming
soon" for now (no on-camera intro yet); the lesson stands on its own and slots
into the Workflows track after intro, before branching.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ouiliame ouiliame marked this pull request as ready for review June 24, 2026 21:57
@ouiliame

ouiliame commented Jun 24, 2026

Copy link
Copy Markdown
Contributor Author

@waleedlatif1 ready to merge when you have a chance. Adds the Academy docs section — docs only, no runtime/auth changes.

…urce

A fumadocs-generated .source/ got committed under content/docs/en/academy and
failed biome (noBannedTypes, unsorted imports). It's unused — the app serves
academy via the root @/.source/server. Remove it and ignore nested .source dirs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ouiliame

Copy link
Copy Markdown
Contributor Author

Superseded by #5213 — clean single-commit history, drops the committed preview MP4s (91MB) and all draft MDX. Same live content.

@ouiliame ouiliame closed this Jun 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants