Skip to main content

Architecture

Dashboard Hub is implemented by the Omega Watch microfrontend and Spring Boot service. Operators interact with hubs and widgets in the browser; the service owns persistence, registries, and secure query proxying.

System shape​

Qinfinite Shell (Single-SPA)
│
▼
Dashboard Hub Client (Omega Watch / React)
│ REST APIs
▼
Omega Watch Service (Spring Boot)
│
├── MongoDB (hubs, dashboards, containers, widgets, preferences)
├── Widget / hub / template registries (JSON seed)
└── Analytical proxies (for example CrateDB SQL)

Key Components​

Web client​

CapabilityDetail
Hubs and listsEntry screens for hubs and dashboards
EditorContainers, widgets, filters, save/refresh chrome
Widget configurationType selection, data binding, preview
State managementZustand store with dashboard/tab/container/widget actions
Delivery modesStandalone Vite app or Single-SPA microfrontend
ThemingLight/dark and accent variants aligned with the shell

Omega Watch service​

CapabilityDetail
Dashboard engineCRUD lifecycle for multi-container dashboards
Hub APIsWorkspace organization for dashboards
Widget registryExtensible widget-type definitions
Container templatesSeeded layout starters
PreferencesPer-user container/widget arrangement
CrateDB / SQL proxyAuthenticated analytical query execution
Data seedingBootstrap from hubs.json, widget-types.json, and related templates

Local service port is commonly 9090 with MongoDB database omega-watch.

API surface (conceptual)​

AreaBase pathResponsibility
Hubs/api/hubsHub CRUD and hub-scoped dashboard listing
Dashboards/api/dashboardsDashboard CRUD, publish/unpublish, assignments
Containers/api/containers and dashboard nested routesLayout container management
Widgets/api/widgetsRegistry and widget instances / data
Preferences/api/preferences/...Personal layouts
Analytical proxy/api/cratedb (or equivalent)SQL execution for database-backed widgets

Treat path details as deployment-specific; gateway prefixes may wrap these routes in enterprise environments.

Data flow​

User edits dashboard
→ Client store updates
→ REST calls persist hubs/dashboards/containers/widgets
→ Widget render requests data
→ Service resolves source (mock/API/SQL/BizOps/catalogue)
→ Payload mapped and drawn in the widget
→ Refresh strategy schedules the next fetch or waits for push

Security notes​

ConcernApproach
AuthSession cookie via BFF or bearer token via API gateway
SecretsAnalytical and system credentials stay on the service
AuthorizationHub-scoped IAM features for manage/view/publish/export
Browser isolationMicrofrontend mount under the shell; avoid leaking host credentials into widget config

How Dashboard Hub relates to BizOps Engine​

ProductStoresPrimary users
BizOps EngineProjects, processes, jobs, workflowsAutomation builders / operators
Dashboard HubHubs, dashboards, widgetsOperators, leads, business stakeholders

Use Engine to change how work runs; use Dashboard Hub to show whether outcomes and health match business expectations.