Skip to content

View-to-API mapping

This is the contract between UI charts and backend query surfaces.

Investment Mix (treemap/sunburst)

  • GraphQL: analytics → breakdowns
  • Backend: api/graphql/resolvers/analytics.py
  • Compiler: api/graphql/sql/compiler.py::compile_breakdown
  • Dimensions: THEME, SUBCATEGORY
  • Measure: effort/count (depends on chart config)

Investment Expense (stacked area)

  • GraphQL: analytics → timeseries
  • Compiler: compile_timeseries

Investment Flows (sankey)

  • GraphQL: analytics → sankey
  • Compiler: compile_sankey
  • Limits: validate_sankey_limits

Hotspots

  • GraphQL: breakdowns or timeseries depending on visualization
  • Backend: analytics resolver + SQL compiler

Explore: Flame diagrams

  • Input: “representative point” selection
  • Output: hierarchical breakdown suitable for flame render
  • Server: (add explicit endpoint if not already present; otherwise a persisted breakdown query)