NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev
pub.dev
Accessible India state and district choropleth maps for Flutter, rendered natively with CustomPainter.
Latest stable
0.3.0
Last release 2 months ago
06 Sep 2026
Too new to tell
only 2 release windows
Nearly every release is documented
notes for 3 of 3 stable releases
Nothing withdrawn
no release was ever pulled
2 months old
3 releases · first in 2026
Drag across the ruler to compare, or tap a release to open it.
Zero-config BharatChoropleth for React, districtValues, and the data pin fix that made v0.2.0's sub-district level unreachable on the default data sou
Zero-config BharatChoropleth for React, districtValues, and the data pin fix
that made v0.2.0's sub-district level unreachable on the default data source.
React, plain JavaScript and Flutter. Python stays at 0.2.0, unchanged.
values keys now resolve through a state registry, so any spelling of a state
a reader might type finds its region: 'goa', 'tamilnadu',
'jammu-and-kashmir' and former names such as 'Orissa' all work, matching
what the React and JavaScript packages already accepted. Exact id and exact
display name are still tried first, so a layer keyed by its own bundle's ids —
what a drill-down loader normally returns — is matched directly and behaves
exactly as before. Below the state level keys fall back to a normalized form,
which still gives case- and separator-insensitive matching.kStates, resolveState, normalizeStateKey and StateIdentity.lib/src/states.dart is a translation of packages/js/src/states.ts, which the
two TypeScript packages share as a byte-identical copy. Dart cannot be diffed
against TypeScript, so the two are held together by behaviour instead:
test/state_resolution_test.dart replays every spelling the JavaScript registry
accepts, recorded in packages/js/test/state-resolution-cases.json, and fails if
this package resolves any of them differently.
Your coding agent can read these notes before it upgrades. Set up the MCP server →
One column per month.
0.2.0: sub-district level across all four renderers
0.2.0: sub-district level across all four renderers
loadSubDistricts, subDistrictDrillDownId and
onSubDistrictDrillDownChange. A loader returning null marks a district as a
leaf, so it selects rather than opening an empty level and is not asked again.ChoroplethBreadcrumb takes an optional third crumb. Existing two-level callers
are unaffected: omitting it renders exactly the previous trail.ChoroplethLevel gains a subdistrict value. Exhaustive switches over it in
host code will need the new case.bharat-choropleth-js 0.1.0
bharat-choropleth-js 0.1.0