lib
Skill Radar sample data
Opt-in fixtures for previewing and testing the radar — one fully-scored set, one with a withheld axis.
npx shadcn@latest add @hextor/skill-fixturesSource
import type { AxisScore } from "@/registry/hextor/lib/axes";
/**
* Sample data for docs previews and tests only — never a `registryDependency`
* of `skill-radar`. A real consumer's scores come from their own submission
* pipeline; shipping this into every install would be dead weight they never
* asked for, so it stays opt-in.
*/
/** All five axes scored — the polygon renders in full, no dashed spokes. */
export const fullyScored: AxisScore[] = [
{ axis: "correctness", points: 36, max: 40 },
{ axis: "test_quality", points: 19, max: 25 },
{ axis: "complexity", points: 12, max: 15 },
{ axis: "performance", points: 11, max: 15 },
{ axis: "code_quality", points: 4, max: 5 },
];
/**
* Performance withheld — e.g. the submission ran on a dev-grade node, so a
* timing comparison against the reference hardware would be dishonest.
* Demonstrates the dashed-spoke / em-dash path: this axis is excluded from
* the polygon, not plotted at zero.
*/
export const withWithheldAxis: AxisScore[] = [
{ axis: "correctness", points: 32, max: 40 },
{ axis: "test_quality", points: 15, max: 25 },
{ axis: "complexity", points: 9, max: 15 },
{
axis: "performance",
points: 0,
max: 15,
withheld: true,
withheldReason: "รันบนเครื่อง dev-grade เทียบกับสเปคอ้างอิงไม่ได้",
},
{ axis: "code_quality", points: 3, max: 5 },
];
Docs
Deliberately a separate item, and deliberately never a registryDependency of any block: sample data should arrive because you asked for it, not because you installed a chart.
Dependencies
@hextor/axes