braven_charts 0.18.0 copy "braven_charts: ^0.18.0" to clipboard
braven_charts: ^0.18.0 copied to clipboard

The full-featured open-source Flutter charting system. Fourteen native chart families with multi-axis, live streaming, crosshair tracking, annotations, and typed grammar.

Braven Charts #

14 chart families rendered by Braven Charts

Pub version Flutter License: MIT

Braven Charts is a native Flutter charting system for focused mobile apps, interactive dashboards, and production-grade data visualization.

Render 14 chart families through one custom RenderBox and Canvas pipeline. Author charts directly, through the checked typed Grammar of Graphics API, or with fluent modifiers. Then add selection, tracking, live data, multi-axis analysis, generated source, tables, and portable artifacts without leaving Flutter's rendering system.

Open the live showcase · See mobile apps · Choose a chart family · Browse documentation

Why Braven Charts #

Built for real Flutter mobile apps #

Nine phone-native sports, wellness, finance, weather, habit, energy, and mobility experiences built with Braven Charts

Building a sports, wellness, health, finance, weather, energy, habit, or mobility app? Compose focused phone experiences with the same native renderer: minimal axes, clear primary metrics, touch-safe spacing, and responsive layouts that do not inherit desktop dashboard chrome.

Explore the mobile app showcase · Review mobile interaction patterns

Choose a chart family #

Start with the question your data needs to answer. Every visual opens the exact runnable guide in the showcase; each guide includes curated presets and the relevant Chart, Data, Split, and Source views.

Line Area
Two line series showing continuous trends and Synchronized route profile Layered area chart showing magnitude and accumulation and Value summary composition
Time series, change over time, and analytical overlays
Line chart family · Synchronized route profile
Open all Line examples · Line guide
Volume, accumulated values, forecasts, and baseline comparison
Area chart family · Value summary composition
Open all Area examples · Area guide
Range Area Bar
Range Area chart showing a low-high interval band and Temperature envelope Grouped bars comparing category values and Waterfall bridge
Low-high envelopes, confidence bands, and bounded ranges
Range Area chart family · Temperature envelope
Open all Range Area examples · Range Area guide
Grouped, stacked, range, waterfall, and ranked data
Bar chart family · Waterfall bridge
Open all Bar examples · Bar guide
Scatter Candlestick
Scatter plot showing three related observation groups and Market opportunity bubbles Candlestick series with a moving-average overlay and Market structure
Correlation, cohorts, distributions, and independent encodings
Scatter chart family · Market opportunity bubbles
Open all Scatter examples · Scatter guide
Price action and interval-based financial observations
Candlestick chart family · Market structure
Open all Candlestick examples · Candlestick guide
Heatmap Pie
Diverging Heatmap showing measured activity across a matrix and Calendar temperature matrix Pie chart showing category contribution to one whole and Revenue contribution
Activity patterns, calendars, correlation matrices, and dense measured fields
Heatmap chart family · Calendar temperature matrix
Open all Heatmap examples · Heatmap guide
Small categorical share datasets with one total
Pie chart family · Revenue contribution
Open all Pie examples · Pie guide
Donut Concentric Donut
Donut chart with a central total and Campaign reach Three concentric donut rings with independent totals and Service-level health
Part-to-whole data that benefits from a central value
Donut chart family · Campaign reach
Open all Donut examples · Donut guide
Comparing distributions across periods, cohorts, or groups
Concentric Donut chart family · Service-level health
Open all Concentric Donut examples · Concentric Donut guide
Polar Column / Rose Radial Bar
Area-correct rose columns arranged on a polar axis and Lifecycle arc Radial bars comparing category progress on an explicit numeric scale and Signed baseline comparison
Cyclical categories and compact magnitude profiles
Polar Column and Rose chart family · Lifecycle arc
Open all Polar Column / Rose examples · Polar Column / Rose guide
Category progress, targets, signed baselines, and compact KPI tracks
Radial Bar chart family · Signed baseline comparison
Open all Radial Bar examples · Radial Bar guide
Radar / Spider Gauge / Solid Gauge
Two aligned profiles compared across six dimensions on a polygon web and Capability profile Needle and Solid Gauge indicators with zones and targets and a second curated example
Comparing a small number of profiles across one ordered, shared dimension set
Radar and Spider chart family · Capability profile
Open all Radar / Spider examples · Radar / Spider guide
Operational state, targets, thresholds, zones, and compact KPI status
Gauge and Solid Gauge family
Open all Gauge / Solid Gauge examples · Gauge / Solid Gauge guide

Install #

dependencies:
  braven_charts: ^0.18.0

Then run flutter pub get.

Compatibility: Dart >=3.9.0 <4.0.0 and Flutter >=3.35.0.

Import the core package:

import 'package:braven_charts/braven_charts.dart';

Quick start #

Use immutable configuration for direct control:

Direct configuration #

class BasicLineChart extends StatelessWidget {
  const BasicLineChart({super.key});

  @override
  Widget build(BuildContext context) {
    return const SizedBox(
      height: 280,
      child: BravenChartPlus(
        title: 'Monthly revenue',
        series: [
          LineChartSeries(
            id: 'revenue',
            name: 'Revenue',
            points: [
              ChartDataPoint(x: 1, y: 42),
              ChartDataPoint(x: 2, y: 48),
              ChartDataPoint(x: 3, y: 45),
              ChartDataPoint(x: 4, y: 57),
              ChartDataPoint(x: 5, y: 63),
            ],
          ),
        ],
      ),
    );
  }
}

Typed Chart Grammar #

final basicGrammarChart = BravenChart.of(revenueSamples)
    .x(sampleMonth, label: 'Month')
    .y(sampleRevenue, label: 'Revenue')
    .geomLine(name: 'Revenue', showDataPointMarkers: true)
    .title('Monthly revenue')
    .build();

The Grammar example uses a typed revenueSamples list and named accessors. It lowers to the same BravenChartPlus renderer as direct configuration.

Grammar / Fluent API (Beta): The Grammar of Graphics and fluent modifier authoring layers are experimental and may change before a stable release. Pin a version if you depend on them. See Chart grammar and the fluent surface.

Continue with a runnable example:

Documentation #

The documentation home organizes runnable examples, concept guides, recipes, and API reference by developer task.

Get started #

Interaction and display #

Data, authoring, and live updates #

  • Typed Chart Grammar — Lower typed accessors, encodings, marks, and options to the standard renderer.
  • Generated Dart source — Capture a mounted chart and inspect checked Config or Grammar output.
  • Live data and buffering — Ingest changing data without rebuilding the widget tree for every sample.
  • Performance — Understand cached layers, spatial indexing, streaming, and large datasets.

Workbench, artifacts, and export #

API reference #

Package and support #

More visual examples #

These examples show combinations rather than another inventory of API options. Each image opens its exact showcase page or preset.

Analytical compositions #

Power-duration model Threshold exposure Technical indicator stack
Dark multi-axis power-duration model with six curves Threshold exposure composition with bars, curves, zones, and tracking Synchronized candlestick, MACD, momentum, and navigator composition

Interaction and live behavior #

Donut selection Crosshair tracking Zoom and pan
Animated donut selection updating center content Animated crosshair tracking across an analytical chart Animated chart zoom and pan with a bounded viewport

Density and navigation #

Hexbin density Density contours Navigator controller
Fifty thousand observations aggregated into interactive hexagonal bins Gaussian density contours preserving fifty thousand source observations Line chart with a shared full-domain navigator and selected viewport

Business and financial #

Waterfall bridge Market structure Market opportunity
Waterfall bridge with positive and negative deltas Candlestick chart with market window and moving-average overlay Scatter plot with independent bubble, colour, and shape encodings

Uncertainty and ranges #

Forecast fan Temperature envelope Volatility channel
Nested Range Area confidence intervals around a median forecast Temperature range envelope with a tracked midpoint Dark volatility channel with tracked price and bounds

Radial and polar #

Revenue contribution Campaign reach Seasonal rose
Pie chart with outside contribution labels Variable-radius donut encoding campaign reach Area-correct seasonal rose chart across twelve months

Race charts in motion #

Championship line race Population bar race
Animated line race with cumulative championship standings and moving endpoint labels Animated horizontal bar race with changing population ranks and period indicator

License #

Braven Charts is available under the MIT License.

2
likes
160
points
2.91k
downloads
screenshot

Documentation

Documentation
API reference

Publisher

unverified uploader

Weekly Downloads

The full-featured open-source Flutter charting system. Fourteen native chart families with multi-axis, live streaming, crosshair tracking, annotations, and typed grammar.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#chart #data-visualization #flutter-widgets #annotations #streaming

License

MIT (license)

Dependencies

crypto, fleather, flex_color_picker, flutter, parchment, web

More

Packages that depend on braven_charts