react-native-chart-kit: two import paths and one paid tier
Beautiful charts for React Native. Line, area, bar, pie, donut, progress, and contribution heatmaps for dashboards, reports, and data-rich mobile apps.
At a glance
- What is it?
- A TypeScript charting library for React Native with seven chart types, tap selection, and shared tooltips, now shipping a v2 entry point beside the legacy root import. The package metadata says as much about the project as the feature list does.
- Who is it for?
- This library suits a team already on React Native with react-native-svg installed and a dashboard or report screen to build, and the v2 entry point is the version to start from. Two things to check before you commit: which import path your screens use, since the root stays for legacy code and the data shape differs, and whether you need PNG or SVG export, which sits in the paid tier rather than the MIT package.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 29 days ago.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 4, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The new API takes xKey and yKey, not labels and datasets
The documented first chart imports from a versioned path and hands the chart plain objects.
import { LineChart } from "react-native-chart-kit/v2";
const data = [
{ month: "Jan", revenue: 52 },
{ month: "Feb", revenue: 86 },
{ month: "Mar", revenue: 58 },
{ month: "Apr", revenue: 134 }
];
export function RevenueChart() {
return (
<LineChart
data={data}
xKey="month"
yKey="revenue"
width={410}
height={240}
/>
);
}That is a different shape from the label-and-dataset form used by the older releases, which is why the project ships both a from-v1 migration page and a separate prop mapping page. The root import is not removed: it stays available for legacy screens, and the guidance is that new screens should use the v2 path. In a codebase mid-migration you will therefore have two import styles coexisting, which is the main practical thing to plan for.
Expo gets the renderer from a different command
Installation is one line for a bare React Native project and two for Expo, because the renderer is installed by a different tool in the second case.
npm install react-native-chart-kit react-native-svgUnder Expo the chart package goes in with npm and the SVG renderer goes in with npx expo install, which is Expo's own installer rather than npm. The reason is visible in the metadata rather than the prose: react-native-svg is not a dependency of this package at all. Every runtime library the chart code needs, including react-native and react-native-svg, appears in devDependencies, because the published artefact is compiled output and the versions it was built against belong to the development environment. In other words, you choose and own the renderer version in your own app, which is what makes the Expo path worth following exactly as written.
The free tier is seven chart types and three interactions
The chart inventory in the MIT package is fixed and short: line, area, bar, pie, donut, progress, and a contribution heatmap, each with its own documentation page. On top of that sit mobile interactions, described as tap selection, shared tooltips, and crosshairs, along with shared themes and defaults for the SVG renderer. Nothing in that list needs a licence key, and nothing in it needs the HTTP API either, since charts render inside your application. The rest of what the README offers is either documentation, an example repository, or the paid tier, which is a separate product rather than a flag in the open one.
Chart Kit Pro is defined by what it adds
The commercial tier is presented as licensed chart workflows for product dashboards, and the list is specific. Candlebar, radar, realtime bar, and combo charts are the additions, which tells you what the free tier leaves out: financial style plots and mixed chart types. The other addition is an API surface rather than a chart, PNG and SVG export endpoints for reports, sharing, and background rendering. Installation is separate, with a dedicated Pro installation page and a pricing page, so a project cannot drift into the paid set by upgrading a version number. If your requirement is only to draw charts on a screen, the free inventory covers it; if the requirement is a PNG in a report or a share sheet, that is the boundary.
The docs come from an HTTP API, the charts do not
The README documents a command-line route into the documentation, which is unusual for a chart library and worth reading before you go looking for a key.
npx --package=react-native-chart-kit chart-kit docs /docs/react-native/charts/lineThe command takes a documentation path, lists pages when given none, and accepts --json for structured output. Three constraints define the split, and the README states each of them. The CLI ships from version 7.0.4, so older installs do not have the binary. No API key is required. And the HTTP API serves documentation only, because charts render locally in your application. The same thinking shows in the surrounding links: an llms.txt file, a separate agent instructions page, an OpenAPI specification at openapi.json, and a developer guide, all aimed at tooling rather than at humans browsing a site.
Two releases on the same day, eight minutes apart
The release history is worth reading as a signal about how the package is versioned. The three most recent tags are v7.0.2 on 2026-07-09, v7.0.3 on 2026-09-06 at 19:52 UTC, and v7.0.4 on 2026-09-06 at 20:00 UTC, with the most recent push to the main branch dated the same day as the later tag. Two patch releases inside one evening means a fix shipped and then a follow-up correction shipped on top of it, which is a common pattern when a published artefact turns out to be wrong rather than merely incomplete. It also means the version in package.json, which reads 7.0.4, is the newest of the pair. The repository is not archived, and the licence is MIT, with a LICENSE file at the root alongside a CHANGELOG.md.
The repository also contains the website, skills, and artifacts
The tree explains why installing the package pulls more than a chart library. The root holds two source directories, src/ and v2/, which is how both import paths can exist in one package, plus bin/ for the command-line entry point, docs/, examples/ with an rn-cli-basic project, test/ with its own tsconfig.test.json and a vitest.config.ts, and skills/ and artifacts/, whose purposes are not explained in the README. package.json declares workspaces covering packages/* and apps/site, so the documentation website is built from this repository, and the devDependency on prettier-plugin-astro exists because that site is an Astro project. Formatting and commit hooks are wired through .husky/ with lint-staged and a .prettierrc, and linting runs through a flat eslint.config.mjs rather than a legacy configuration.
Editorial conclusion
This library suits a team already on React Native with react-native-svg installed and a dashboard or report screen to build, and the v2 entry point is the version to start from. Two things to check before you commit: which import path your screens use, since the root stays for legacy code and the data shape differs, and whether you need PNG or SVG export, which sits in the paid tier rather than the MIT package. Pin the version, given two releases landed on the same day in the last batch.
Frequently asked questions
How do I install react-native-chart-kit?
Run npm install react-native-chart-kit react-native-svg. Under Expo the two are installed separately: npm install react-native-chart-kit followed by npx expo install react-native-svg, since the renderer is not a dependency of the chart package and your app owns that version.
Should I import from the package root or from /v2?
New screens should import from react-native-chart-kit/v2, which is where the documented first chart comes from, with an array of data objects plus xKey and yKey. The root import stays available for legacy screens, and the docs include a from-v1 migration page and a prop mapping page.
Which chart types does react-native-chart-kit include for free?
Line, area, bar, pie, donut, progress, and contribution heatmaps, together with tap selection, shared tooltips, and crosshairs, plus shared themes and SVG renderer defaults. The package is MIT licensed and renders charts locally in your application.
What does Chart Kit Pro add to react-native-chart-kit?
Licensed workflows for product dashboards: candlebar, radar, realtime bar, and combo charts, plus PNG and SVG export APIs for reports, sharing, and background rendering. Pro is installed separately and has its own installation and pricing pages.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/chart-kit-react-native-chart-kit)