How ponder2000/embedded-guide works
This is a Go-generated, static educational website: learners follow a registered sequence of embedded-systems lessons, with browser-side reading aids and interactive simulations. The generation path combines chapter content, HTML templates, embedded assets, and optional SEO metadata into deployable files; a separate preview server serves those files without rendering templates. The graph includes documented browser capabilities even where their implementation was not sampled. Edges are limited to relationships visible in excerpts or stated in the README.
Main entry points: site.go Site generator · app.js Settings and progress · template.go Template renderer · chapters.go Chapter registry
Components 20
Static generation
- Site generator
internal/site/site.go - Template renderer
internal/render/template.go - Embedded assets
assets.go - SEO metadata
internal/site/seo.go - Output writer
internal/site/output.go
Learning content
- Chapter registry
internal/content/chapters.go - Chapter reviews
internal/content/checkpoints.go - Lesson templates
web/templates/chapters - Shared page templates
web/templates - Generated static pages
Browser experience
- Settings and progress
web/static/js/app.js - IndexedDB state
- Tab synchronization
- Interactive simulations
web/static/js/simulations.js - Synthesized sound
web/static/js/app.js - Visits counter
Local preview
- Preview server
internal/preview/preview.go - Server command
cmd/server/main.go
Other components
- Learner
- Static host
Connections 20
- Site generator → Chapter registry: reads chapters
internal/site/site.go - Site generator → Template renderer: renders pages
internal/site/site.go - Site generator → Embedded assets: loads assets
internal/site/site.go - Site generator → SEO metadata: builds metadata
internal/site/site.go - Site generator → Output writer: writes files
- Template renderer → Shared page templates: parses templates
internal/render/template.go - Chapter registry → Lesson templates: registers lessons
internal/content/chapters.go - Site generator → Generated static pages: generates pages
internal/site/site.go - Learner → Static host: opens lessons
- Static host → Generated static pages: serves pages
- Generated static pages → Settings and progress: enables features
- Generated static pages → Interactive simulations: hosts simulations
- Settings and progress → IndexedDB state: reads and writes
web/static/js/app.js - Settings and progress → Tab synchronization: syncs tabs
README.md - Settings and progress → Synthesized sound: synthesizes tones
web/static/js/app.js - Interactive simulations → Settings and progress: dispatches feedback
web/static/js/simulations.js - Chapter reviews → Lesson templates: provides reviews
README.md - Generated static pages → Visits counter: loads badge
README.md - Server command → Preview server: starts preview
cmd/server/main.go - Preview server → Generated static pages: serves generated files
internal/preview/preview.go