Skip to content

Phase 4: hand-rolled SVG charts (replace D3) #346

@CalebisGross

Description

@CalebisGross

Part of #339

Replace all D3.js charts with hand-rolled SVG/CSS. Zero external dependencies.

js/charts.js with shared helpers:

  • createSVG(), scaleLinear(), scaleBand(), monotoneCubicPath() (Fritsch-Carlson), renderXAxis(), renderYAxis()

8 chart replacements (~660 lines total):

  • Timeline sparkline (30-day bars) — Low
  • SDK cost chart (bars + axes) — Low-Medium
  • LLM token chart (stacked bars) — Medium
  • Tool calls chart (bars + errors) — Low
  • Memory Lifecycle (stacked area + curves) — High (~150 lines)
  • KPI sparklines (inline SVG) — Low-Medium
  • Signal Quality (horizontal bars) — Low
  • Recall Learning Curve (connected dots) — Low-Medium

The D3 CDN dependency is a bug that breaks air-gap. This fixes it permanently.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions