syncfusion-react-circular-gauge — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited syncfusion-react-circular-gauge (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use the Circular Gauge component when you need to:
The Circular Gauge is ideal for applications requiring visual representation of values on a circular scale with customizable appearance, animations, and interactivity.
Syncfusion React Circular Gauge (@syncfusion/ej2-react-circulargauge) is a data visualization component that displays values on a circular scale. It consists of:
Choose the reference based on what you need to implement:
📄 Read: references/getting-started.md
@syncfusion/ej2-react-circulargauge package📄 Read: references/axes-pointers-ranges.md
📄 Read: references/appearance-dimensions.md
📄 Read: references/annotations-legend.md
📄 Read: references/advanced-features.md
📄 Read: references/api-reference.md
📄 Read: references/accessibility-i18n.md
📄 Read: references/common-patterns.md
Here's a minimal working example to get started:
import React from 'react';
import { CircularGaugeComponent, AxesDirective, AxisDirective,
PointersDirective, PointerDirective, RangesDirective, RangeDirective }
from '@syncfusion/ej2-react-circulargauge';
export function App() {
return (
<div style={{ height: '500px' }}>
<CircularGaugeComponent
title="Speedometer"
centerX="50%"
centerY="50%"
>
<AxesDirective>
<AxisDirective
startAngle={270}
endAngle={90}
minimum={0}
maximum={100}
>
<RangesDirective>
<RangeDirective start={0} end={30} color='#1E7145' />
<RangeDirective start={30} end={60} color='#F7D900' />
<RangeDirective start={60} end={100} color='#C1192B' />
</RangesDirective>
<PointersDirective>
<PointerDirective
value={65}
type='Needle'
radius='70%'
/>
</PointersDirective>
</AxisDirective>
</AxesDirective>
</CircularGaugeComponent>
</div>
);
}Install the package first:
npm install @syncfusion/ej2-react-circulargauge --save<CircularGaugeComponent>
<AxesDirective>
<AxisDirective minimum={0} maximum={100}>
<RangesDirective>
<RangeDirective start={0} end={50} color='#E8E8E8' />
<RangeDirective start={50} end={100} color='#4CAF50' />
</RangesDirective>
<PointersDirective>
<PointerDirective value={75} type='RangeBar' />
</PointersDirective>
</AxisDirective>
</AxesDirective>
</CircularGaugeComponent>Use multiple pointers on the same axis to compare values:
<PointersDirective>
<PointerDirective value={45} type='Needle' />
<PointerDirective value={60} type='Marker' />
</PointersDirective>const [value, setValue] = useState(50);
// Update pointer value on interval
useEffect(() => {
const timer = setInterval(() => {
setValue(prev => (prev + Math.random() * 10) % 100);
}, 1000);
return () => clearInterval(timer);
}, []);
// Bind value to pointer
<PointerDirective value={value} />| Prop | Type | Purpose | ||
|---|---|---|---|---|
title | string | Gauge title displayed at top | ||
centerX / centerY | string | Position (% or px) | ||
startAngle / endAngle | number | Axis sweep degrees (0-360) | ||
minimum / maximum | number | Axis scale range | ||
value (pointer) | number | Current pointer value | ||
type (pointer) | 'Needle' \ | 'RangeBar' \ | 'Marker' | Pointer visualization type |
radius (pointer) | string | Pointer length (% or px) | ||
color | string | Element color (hex, rgb, name) | ||
direction | 'ClockWise' \ | 'AntiClockWise' | Axis direction | |
animationDuration | number | Animation time in milliseconds |
For the complete API listing (all component props, events, methods and child directives) see: references/api-reference.md
For more details or advanced scenarios, consult the specific reference files linked above.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.