How lobehub/lobe-mygo works
Lobe MyGo is a pure-Go UI component kit for MyGo native applications, with design tokens, motion, and Lucide icons. An application view applies the theme and composes components; the UI framework renders them and returns interaction state to the view. The repository also provides a component catalog whose main program registers demos and presents a selected preview. The README documents broad component families and localization; several are represented by package-level nodes because their implementations were not sampled, so those links are omitted where call evidence is unavailable.
Main entry points: field Fields · code Code widgets · home Catalog showcase · catalog Component demos
Components 20
UI Components
- Actions
pkg/action - Fields
pkg/field - Choices
pkg/choice - Display
pkg/display - Navigation
pkg/nav - Layout
pkg/layout - Code widgets
pkg/code - Markdown
pkg/markdown
Overlays and Feedback
- Overlay widgets
pkg/overlay - Feedback
pkg/feedback
Design Foundation
- Theme tokens
pkg/theme - Motion
pkg/motion - Lucide icons
pkg/lucide - Localization
pkg/internal/l10n
Component Catalog
- Catalog app
catalog/main.go - Demo registry
catalog/registry/registry.go - Component demos
catalog - Catalog showcase
catalog/home
Other components
- Go app view
- MyGo UI runtime
Connections 31
- Go app view → MyGo UI runtime: defines views
- Go app view → Theme tokens: applies theme
- Go app view → Actions: composes UI
- Actions → Theme tokens: reads tokens
pkg/action/button.go - Fields → Display: uses hotkey
pkg/field/searchbar.go - Fields → Localization: gets text
pkg/field/searchbar.go - Fields → Lucide icons: renders icons
pkg/field/searchbar.go - Choices → Fields: uses input
pkg/choice/colorpanel.go - Choices → Localization: gets labels
pkg/choice/colorpanel.go - Code widgets → Feedback: renders spinner
pkg/code/qrcode.go - Code widgets → Lucide icons: renders icons
pkg/code/qrcode.go - Code widgets → Localization: gets labels
pkg/code/qrcode.go - Markdown → Code widgets: uses code widgets
pkg/markdown/markdown.go - Overlay widgets → Display: renders content
pkg/overlay/dropdown.go - Overlay widgets → Motion: uses transitions
pkg/overlay/dropdown.go - Feedback → Motion: uses backdrop
pkg/feedback/floatingpanel.go - Navigation → Motion: uses transitions
pkg/nav/pagination.go - Layout → Localization: gets labels
pkg/layout/draggablesidenav.go - Layout → Lucide icons: renders icons
pkg/layout/draggablesidenav.go - Layout → Motion: uses animation
pkg/layout/draggablesidenav.go - Markdown → Theme tokens: reads tokens
pkg/markdown/markdown.go - Catalog app → Demo registry: looks up demos
catalog/main.go - Catalog app → Component demos: registers demos
catalog/main.go - Catalog app → Theme tokens: applies theme
catalog/main.go - Component demos → Actions: composes components
catalog/draggable-side-nav/basic.go - Component demos → Layout: demonstrates layout
catalog/draggable-side-nav/basic.go - Component demos → Display: demonstrates display
catalog/draggable-side-nav/basic.go - Catalog showcase → Code widgets: renders examples
catalog/home/tiles.go - Catalog showcase → Fields: renders examples
catalog/home/tiles.go - Catalog showcase → Choices: renders examples
catalog/home/tiles.go - Catalog showcase → Feedback: renders examples
catalog/home/tiles.go