Prox OS Internal Docs
PlatformArchitectureMedia

Charting Architecture

Prox OS does not build a chart engine. It maintains OS-native chart shells,

Scope

Prox OS does not build a chart engine. It maintains OS-native chart shells, theme mapping, chart contract adapters, and Storybook examples that can sit on top of proven chart libraries.

Engine Policy

EngineRoleCurrent package use
Apache EChartsDefault engine for rich dashboards, dense interactions, and broad chart coverage.EChartsPanel
Vega-LitePortable, AI-readable chart specification for generated or shared chart definitions.VegaLitePanel
RechartsLightweight React dashboard option for small cards and simple trend visuals.RechartsMiniChart
CustomFuture escape hatch for app-specific or remote visualization surfaces.Contract only

ECharts is the default because it covers the widest chart surface without Prox OS becoming a chart engine maintainer. Vega-Lite is important because a compact JSON spec is easy for AI agents, docs, and portable app packages to inspect. Recharts remains useful for simple React-native dashboard cards.

Contract Connection

@prox-os/data-contract defines:

type OsChartEngine = 'echarts' | 'vega-lite' | 'recharts' | 'custom'

OsChartSpec stores the engine name, optional datasetId, metadata, and a neutral spec object. @prox-os/data-viz interprets that spec for Storybook and early app surfaces, while apps can still pass engine-native options when they need deeper control.

Theme Mapping

@prox-os/data-viz reads --os-* design tokens at runtime and keeps fallback colors centralized in theme.ts. Chart adapters should not hardcode large palettes inside components. When design tokens evolve, data-viz should map semantic chart colors from the token layer rather than duplicating a design system.

Future Custom Chart Apps

Future user or community chart apps can run as local modules, iframe apps, remote modules, or external apps. The shell should discover the app through a manifest. The app owns its internal chart route and rendering engine. Prox OS provides the contract, runtime context, permissions, and theme hints.

Non-goals

  • No custom chart renderer.
  • No forced single chart library for every app.
  • No production analytics backend in this package.
  • No chart export service until the platform owns real file/output policies.

On this page