gauge_kit 0.3.0
gauge_kit: ^0.3.0 copied to clipboard
Open-source Flutter gauges: radial, linear, segmented, arc, thermometer. Three built-in design styles (Material 3, Cupertino, Executive), pluggable style architecture, MIT license. No vendor lock-in. [...]
0.3.0 #
GaugeAnnotation— new class for pinning arbitrary Flutter widgets at specific value positions around theRadialGaugearc. SupportsradiusFractionandoffsetfor precise placement.RadialGauge— converted toStatelessWidgetwrapper supportingchild(centre overlay),annotations(List<GaugeAnnotation>),labelFormatter(custom tick text), andunitText(centre value suffix).ArcGauge— converted toStatelessWidgetwrapper with a full new layout tier:child(centre overlay),header/footerlabels,fillColor(inner circle),widgetIndicator(moving tip widget),reverse(fill from far end),showValue,unitText, andbackgroundWidth(override track stroke width).LinearGauge— converted toStatelessWidgetwrapper withleading/trailingend widgets,centeroverlay,widgetIndicator(moving tip widget),reverse,showValue,unitText,labelFormatter, andbarRadius(rounded filled-bar mode).- Glow effects —
GaugeTokens.valueGlowRadius(double, default0.0) andGaugeTokens.valueGlowColor(Color?) added to all arc/linear render engines; positive radius renders a soft outer glow behind the value arc or bar. GaugeController.animateTo()— newonAnimationEndcallback fires when the animation completes.- All new params are optional with sensible defaults — existing code requires zero changes.
0.2.0 #
GaugeController.animateTo()— new self-contained animation API; no externalAnimationControllerrequired. Accepts optionaldurationandcurveoverrides.GaugeTokens— all constructor parameters are now optional with sensible defaults, making it easier to create partial token overrides in custom styles.GaugePointer— new class for adding extra needles toRadialGaugewith independent controllers, colors, and optional labels.RadialGauge.extraPointers— accepts aList<GaugePointer>to render multiple concentric needles on a single gauge face.DeltaGauge.lowerIsBetter— boolean flag that inverts the positive/negative color semantics for "lower is better" metrics such as loss functions or lap times.- Semantics — all 14 gauge widgets now wrap their canvas in a
Semanticsnode and announce the current value to screen readers on every update. semanticsLabelparam — added to all gauge widgets; overrides the default auto-generated accessibility label with a custom string.gauge_kit_rendering.dart— new advanced barrel export exposing internal render box types for consumers who need direct access to the render layer.- Internal cleanup: engine render boxes (
RenderRadialGauge,RenderArcGauge, etc.) removed from the maingauge_kit.dartpublic export to keep the default surface area small; importgauge_kit_rendering.dartto access them.
0.1.0 #
- Initial release.
- 14 gauge widget types:
RadialGauge,LinearGauge,SegmentedGauge,ArcGauge,ThermometerGauge,BulletGauge,TankGauge,InclinometerGauge,StatusGauge,DeltaGauge,ArtificialHorizonGauge,OdometerGauge,LevelMeterGauge,TapeGauge. - 3 built-in styles:
MaterialGaugeStyle,CupertinoGaugeStyle,ExecutiveGaugeStyle. GaugeModeenum withambientandinstrumentvariants.GaugeThemeExtensionfor FlutterThemeExtensionintegration.GaugeController(ChangeNotifier) for value management.- Pure Canvas rendering via
LeafRenderObjectWidget— zero external dependencies. - Static-layer picture caching for performant animation.
- CVD-safe color defaults (Paul Tol scheme).
UnitConverterutility for speed, temperature, pressure, and power conversions.- MIT license.