This repository now builds the radar as a static Vite site backed by YAML content.
data/radar.yml: radar-wide metadata, colors, rings, and quadrantsdata/home.yml: homepage copy, section labels, and ring descriptionsdata/quadrants/*.yml: quadrant-specific entriessrc/radar/renderRadar.js: D3 renderer adapted from the original static implementationsrc/radar/normalizeRadarData.mjs: transforms symbolic YAML content into the renderer formatscripts/generate-radar-data-module.mjs: build-time data generation from YAMLdocs/: legacy static implementation kept as reference during the migration
Install dependencies:
npm installStart the Vite dev server:
npm run devWhile the dev server is running:
- changes in
src/hot reload immediately - changes in
data/home.yml,data/radar.yml, anddata/quadrants/*.ymlregenerate the derived module and trigger a full page reload
Build the static site:
npm run buildRun tests:
npm testRun lint checks:
npm run lintThe source of truth for radar content is YAML.
- Edit
data/radar.ymlfor global metadata. - Edit
data/home.ymlfor homepage copy. - Edit
data/quadrants/*.ymlfor entries. npm run sync:dataregenerates the JS module consumed by the app.npm run devandnpm run buildrun the data sync automatically.
- The chart renderer is still based on the original Zalando/Thoughtworks-style D3 radar.
- The current Vite app is intentionally simple so it can later be embedded into VitePress without rewriting the data or rendering layers.
MIT