Skip to content

Source code reference

bluebird-hmi is a TypeScript/React frontend, so we do not use mkdocstrings here (it is currently configured for Python packages in this repo).
This page provides a practical map of the key source modules.

App shell and state

  • bluebird-hmi/src/main.tsx: React entry point.
  • bluebird-hmi/src/App.tsx: top-level application composition.
  • bluebird-hmi/src/app/store.ts: Redux store setup.
  • bluebird-hmi/src/app/hooks.ts: typed Redux hooks.
  • bluebird-hmi/src/slices/scenarioSlice.tsx: scenario state and control data.
  • bluebird-hmi/src/slices/staticDataSlice.tsx: static simulation data state.
  • bluebird-hmi/src/slices/dynamicDataSlice.tsx: live simulation data state.
  • bluebird-hmi/src/slices/hmiDataSlice.tsx: HMI UI state.

API integration

  • bluebird-hmi/src/api/config.ts: API endpoint configuration.
  • bluebird-hmi/src/api/api.ts: request layer for backend endpoints.
  • bluebird-hmi/src/api/emptyApi.ts: base API placeholder/RTK wiring.

Radar and visualisation

  • bluebird-hmi/src/pages/RadarPage.tsx: primary radar page container.
  • bluebird-hmi/src/components/Radar.tsx: radar canvas/component orchestration.
  • bluebird-hmi/src/components/radarElements/: rendered map/aircraft/fix/route layers.
  • bluebird-hmi/src/components/overlays/: UI overlays such as action logs and colour bars.
  • bluebird-hmi/src/components/radarDrawer/: drawer controls (themes, map controls, timeline, tools).

Panels and scenario UI

  • bluebird-hmi/src/components/panel/: side panels for scenario metadata and control.
  • bluebird-hmi/src/components/panel/items/: reusable panel controls (buttons, switches, selectors, inputs).
  • bluebird-hmi/src/components/scenarioSelection/: scenario/category selection and loading.
  • bluebird-hmi/src/components/infoBlock/: aircraft/radar information block variants.

Geometry and styling helpers

  • bluebird-hmi/src/utils/: geometry, heading, distance, path creation, and shared types.
  • bluebird-hmi/src/utils/profiles/: colour and line-width profiles used by radar rendering.
  • bluebird-hmi/src/components/ToolStoreHandlers.ts: integration points for ATC tool state/actions.