trak studio
Launches the local Trak Studio Web Dashboard and mounts an embedded visual IDE directly in your default browser.
Command Overview
Starts an in-memory virtual HTTP server on port 8200 (or custom port via -p/--port) and mounts an embedded Single Page Application connected to your local curriculum workspace via a high-performance REST bridge. Features an interactive curriculum roadmap, integrated Monaco Code Editor with live disk sync, real-time assertion test runner, multi-workspace hub, and documentation viewer. If launched within an active track directory (containing trak.json), Studio immediately displays your Track Dashboard; if launched outside, it routes to the Workspaces Hub to manage and switch between local tracks.
Execution Lifecycle
Available Flags
Custom HTTP port for Trak Studio (e.g. 8500, 3000).
Display studio command help and options.
Usage Examples
Launches the embedded Web Studio and opens http://localhost:8200 in your default browser.
Runs Studio on port 8500 if the default port 8200 is already occupied.
Binds Trak Studio to port 3000 using shorthand flag.
Important Technical Guidelines
Trak Studio is compiled directly into the single trak binary using Go's embed.FS virtual filesystem. Learners don't need Node.js, npm, or an internet connection to run Studio.
If you run 'trak studio' inside an initialized track folder (like ./learn-go), Studio opens directly to your active module roadmap and Monaco editor. If run from a parent folder, it opens the Workspaces Hub to let you manage and switch between all your tracks.
Files saved in Trak Studio's Monaco editor are immediately synced to your physical disk. Conversely, any edits made in VS Code or external tools are reflected in Studio upon refresh.