Workspace Portal — Course Index
Workspace Portal — Course Index
Section titled “Workspace Portal — Course Index”A self-study series for building workspace-portal from scratch. Each course produces working code and teaches the technology used to build the portal.
Audience: Developers familiar with TypeScript/JavaScript who want to learn Go and HTMX through a real project.
Project: A self-hosted, mobile-friendly web portal that launches and manages per-directory OpenCode, code-server, and npm script sessions.
Courses
Section titled “Courses”| Course | Topic | What you build |
|---|---|---|
| Course 01 | Go Foundations | Go language, stdlib, toolchain — referenced throughout |
| Course 02 | Building the Portal in Go | All Go modules: config, fs, session (oc, vscode, script), HTTP server (text stubs) |
| Course 03 | HTMX and Server-Sent Events | Full UI: directory tree, session management, Scripts dialog picker, live SSE updates |
| Course 04 | Script Runner | End-to-end script runner: package.json detection, dialog picker, session wiring |
| Course 05 | Deployment | launchd service, production checklist, README, config example |
| Course 06 | Tailscale Setup | Install, MagicDNS + HTTPS in admin console, tailscale serve, internal/tailscale Go module |
Prerequisites
Section titled “Prerequisites”- Comfortable with TypeScript/JavaScript (used as the comparison language throughout)
- A Mac with Go 1.22+ installed
Learning Path
Section titled “Learning Path”The courses are designed to be read and coded in order. Each course begins where the previous one left off. If you are already comfortable with a topic, you can skim the early lessons and start coding at the first code block you have not seen before.
Reference
Section titled “Reference”- PRD — Product Requirements Document — full specification: user stories, module design, config schema, SSE events, testing decisions
- Go standard library
- HTMX documentation
- launchd reference