Batoi UIF Architecture
Batoi UIF is designed to work inside existing Batoi pages without forcing every route to adopt a new shell.
The public page or product route owns the page chrome. UIF owns the contained interface surface.
Architecture Diagram
Layers
| Layer | Responsibility |
|---|---|
| Route controller | Loads metadata, selects content, prepares page state |
| Pagepart | Renders the Micro App root and documentation blocks |
| Prepart | Loads UIF CSS and route-scoped styles |
| Postpart | Loads UIF JavaScript and initializes behavior |
| UIF library | Provides reusable interface primitives, icons, charts, and helpers |
Integration Boundary
Use UIF when a page needs an application-like workspace, not just static content.
Good boundaries include:
- a dashboard panel
- a workflow form
- a register
- a data visualization studio
- an AI app composer
- a theme builder
Avoid loading UIF globally unless the whole product shell is designed around it.
Source and Runtime
The Batoi.com public examples load the reviewed public UIF distribution served with the example gallery.
The canonical public source repository is github.com/batoisystems/batoi-uif.