A browser-first UI runtime for Go targeting WebAssembly with gomponents-based type-safe HTML and fine-grained reactivity.
- Overview - Introduction and key concepts
- Getting Started - Quick setup and first example
- Concepts - Core mental models and architecture
- Reactivity & State - Signals, Effects, Memos, Store, Resources
- Control Flow - Show, For, Index, Switch, Dynamic components
- Helper Functions - Comprehensive guide to UIwGo helper functions
- Forms & Events - Event handling and form patterns
- Lifecycle & Effects - Component lifecycle and effect management
- Application Manager - Application lifecycle and management
- Real-World Examples - Practical usage patterns with real applications
- Integration Examples - Complex examples showing helpers working together
- Performance Optimization - Optimizing UIwGo application performance
- Troubleshooting - Common issues and debugging techniques
- Core APIs - Complete API documentation
- Troubleshooting - Common issues and solutions
This documentation follows a task-oriented approach designed for three main audiences:
- Application Developers - Building SPAs and interactive pages with Go + WebAssembly
- Integrators - Using React/shadcn/ui components within the Go runtime
- Contributors - Extending the runtime and maintaining the codebase
For the fastest path to a working example:
# Clone and setup
git clone <repository>
cd uiwgo
# Run the counter example
make run counter
# Open http://localhost:8080 in your browserSee Getting Started for detailed setup instructions.
- Fine-grained Reactivity - Signals, Effects, Memos with automatic dependency tracking
- Gomponents-based Rendering - Type-safe HTML generation with post-render binding
- WebAssembly Target - Go code running efficiently in the browser
- React Compatibility - Bridge for using React/shadcn/ui components
- Client-side Routing - Full navigation API with nested routes
- Comprehensive Testing - Unit tests and browser E2E testing patterns
- Developer Experience - Hot reload dev server and Make-based workflows
This documentation is being delivered in phases:
- Phase 1 ✅ - Foundations (Overview, Getting Started, Concepts, Core Guides)
- Phase 2 🚧 - Application Building (Advanced Guides, Router, Examples)
- Phase 3 📋 - Ecosystem & Quality (React Compatibility, Performance, Testing)
Contributions and feedback are welcome!