Go is Not Just on Your Server, it's in Your Browser: Intro to Vugu
summary
Vugu compiles .vugu single‑file components into Go source with vugugen, then builds a WebAssembly .wasm that runs a Go runtime in the browser and synchronizes a virtual DOM to the real DOM. It supports declarative directives like vg-if, vg-for and vg-content, lifecycle callbacks, hot reload, a router, server‑side rendering option, and tinygo for smaller binaries (current wasm builds are a few megabytes). Live demo fetches JSON via http.get and renders raw HTML via an html interface.
AI-written summary · about
chapters (30)
- 0:00Introduction
- 0:39Agenda
- 4:33Memory Lane
- 6:11Whats the Pattern
- 8:14How Vugu Works
- 12:47vgrun
- 14:48entry endpoint
- 16:37entry type
- 18:03init
- 24:09reactive user interfaces
- 29:40recap
- 30:31Single file components
- 31:37DOM events
- 32:11CSS
- 32:51Vugu Content
- 34:59Dynamic Attributes
- 35:42Static Components
- 36:38Dynamic Components
- 37:03Life Cycle Callbacks
- 37:23TinyGo
- 38:04ServerSide Rendering
- 38:51URL Router
- 39:11Variable Binding
- 39:32Modification Tracking
- 39:58Slots
- 40:23Forms
- 41:58Roadmap
- 42:08Component Libraries
- 46:29Style vs Functionality
- 54:27Thanks
related talks
18mGet Going With WebAssembly
36mGo in the World of WebAssembly: Not Just the Browser
08mRunning Go in Browsers Using WASM
25mWebAssembly with Go: Powering the Web with Speed and Efficiency
37mGo, WebAssembly!
36mGo in the WebAssembly World: Beyond the Browser
32mWASM on Edge Serverless; Make Your Life Easier with Go and TinyGo
24mDeploy a Go HTTP server in your browser
