{"_id":"@anshupal1058/charts","_rev":"6-d4088be466a93807a6f8984e6a950b47","name":"@anshupal1058/charts","dist-tags":{"latest":"0.1.4"},"versions":{"0.1.0":{"name":"@anshupal1058/charts","version":"0.1.0","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"author":{"name":"anshupal1058"},"license":"MIT","_id":"@anshupal1058/charts@0.1.0","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"dist":{"shasum":"2cd9b50c6b9817c5fd7907493402446ae758b853","tarball":"https://registry.npmjs.org/@anshupal1058/charts/-/charts-0.1.0.tgz","fileCount":9,"integrity":"sha512-nHxTduN9kDD7DtkBTWFffiKoBpKytDm+6VnyTnkjn9jWN0wvfUYVO2YexMYxehLagvq6s+A22Xrp9hboE7S3Zw==","signatures":[{"sig":"MEQCIFnMAuLn02SrrUVOV0jEzxbZeYtqHRxpFR0lPCEbWP78AiB+l191xQLOvYcqXxtGY97yxYa7K+vQ9zKop2xuG4N28A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":896958},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"dev":"npm run copy:css && tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"tsup && npm run copy:css","copy:css":"node -e \"require('fs').copyFileSync('src/styles.css','dist/styles.css')\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"anshupal1058","email":"anshupal1058@gmail.com"},"_npmVersion":"10.8.2","description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"20.19.5","dependencies":{"lodash":"4.17.21","d3-path":"3.1.0","echarts":"5.5.0","numeral":"2.0.6","chart.js":"4.4.1","d3-scale":"4.0.2","d3-shape":"3.2.0","date-fns":"2.30.0","recharts":"3.8.1","@nivo/bar":"0.94.0","@nivo/pie":"0.94.0","plotly.js":"2.29.1","@nivo/core":"0.94.0","@nivo/line":"0.94.0","apexcharts":"3.45.2","@nivo/chord":"0.94.0","html2canvas":"1.4.1","@nivo/icicle":"0.94.0","@nivo/sankey":"0.94.0","d3-hierarchy":"3.1.2","lucide-react":"0.344.0","@nivo/heatmap":"0.94.0","@nivo/treemap":"0.94.0","@nivo/sunburst":"0.94.0","@nivo/swarmplot":"0.94.0","react-chartjs-2":"5.2.0","react-plotly.js":"2.6.0","@nivo/radial-bar":"0.94.0","react-apexcharts":"1.4.1","echarts-for-react":"3.0.2","@nivo/circle-packing":"0.94.0","@sgratzl/chartjs-chart-boxplot":"4.2.5","@vnedyalk0v/react19-simple-maps":"^2.0.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^19.2.0","react-dom":"^19.2.0","typescript":"^5.5.4","@types/react":"^18.3.3","@types/lodash":"^4.17.0","@types/d3-path":"^3.1.0","@types/numeral":"^2.0.5","@types/d3-scale":"^4.0.8","@types/d3-shape":"^3.1.6","@types/react-dom":"^18.3.0","@types/d3-hierarchy":"^3.1.7"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/charts_0.1.0_1782204241580_0.16057168468446426","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onelogica/charts. Please update your dependency."},"0.1.1":{"name":"@anshupal1058/charts","version":"0.1.1","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"author":{"name":"anshupal1058"},"license":"MIT","_id":"@anshupal1058/charts@0.1.1","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"dist":{"shasum":"3d888f3e1cd4e1e8870f5858a0565312b44b54bb","tarball":"https://registry.npmjs.org/@anshupal1058/charts/-/charts-0.1.1.tgz","fileCount":9,"integrity":"sha512-FArclVmDlPmNyUZhbmSTKTpXmwpkRoeUsdiIMZ8+bdrIAF85AU5EcoKVaCw4CFDEPeFXwddIpMW+DVXUJld/AQ==","signatures":[{"sig":"MEUCIGpVepyd2w4rIt3HXduPY/SE5FE872cX6CSlc1Lb/76eAiEA9Otu/KEreX8x3of3TZNnL2/LftepUuuvZR0PYyw9hWc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1027343},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"dev":"npm run copy:css && tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"tsup && npm run copy:css","copy:css":"node -e \"require('fs').copyFileSync('src/styles.css','dist/styles.css')\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"anshupal1058","email":"anshupal1058@gmail.com"},"_npmVersion":"10.8.2","description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"20.19.5","dependencies":{"lodash":"4.17.21","d3-path":"3.1.0","echarts":"5.5.0","numeral":"2.0.6","chart.js":"4.4.1","d3-scale":"4.0.2","d3-shape":"3.2.0","date-fns":"2.30.0","recharts":"3.8.1","@nivo/bar":"0.94.0","@nivo/pie":"0.94.0","plotly.js":"2.29.1","@nivo/core":"0.94.0","@nivo/line":"0.94.0","apexcharts":"3.45.2","@nivo/chord":"0.94.0","html2canvas":"1.4.1","@nivo/icicle":"0.94.0","@nivo/sankey":"0.94.0","d3-hierarchy":"3.1.2","lucide-react":"0.344.0","@nivo/heatmap":"0.94.0","@nivo/treemap":"0.94.0","@nivo/sunburst":"0.94.0","@nivo/swarmplot":"0.94.0","react-chartjs-2":"5.2.0","react-plotly.js":"2.6.0","@nivo/radial-bar":"0.94.0","react-apexcharts":"1.4.1","echarts-for-react":"3.0.2","@nivo/circle-packing":"0.94.0","@sgratzl/chartjs-chart-boxplot":"4.2.5","@vnedyalk0v/react19-simple-maps":"^2.0.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^19.2.0","react-dom":"^19.2.0","typescript":"^5.5.4","@types/react":"^18.3.3","@types/lodash":"^4.17.0","@types/d3-path":"^3.1.0","@types/numeral":"^2.0.5","@types/d3-scale":"^4.0.8","@types/d3-shape":"^3.1.6","@types/react-dom":"^18.3.0","@types/d3-hierarchy":"^3.1.7"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/charts_0.1.1_1782279035335_0.6496169570355499","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onelogica/charts. Please update your dependency."},"0.1.2":{"name":"@anshupal1058/charts","version":"0.1.2","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"author":{"name":"anshupal1058"},"license":"MIT","_id":"@anshupal1058/charts@0.1.2","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"homepage":"https://github.com/anshupal1058/react-charts-kit#readme","bugs":{"url":"https://github.com/anshupal1058/react-charts-kit/issues"},"dist":{"shasum":"165cc75edf55147c0dd2b364d044b3df04c31cbb","tarball":"https://registry.npmjs.org/@anshupal1058/charts/-/charts-0.1.2.tgz","fileCount":9,"integrity":"sha512-BsK/G91YWUiGOdwCh42nrqdtPIkM+rM1rW90zFEjHyWfYjrJXJvxMit5axEZIDbGxFc/4ipgzTxic5Yud+l+5Q==","signatures":[{"sig":"MEQCICcEe1tKF5hSPyGuZ34i/ccqfy2PO1cZKmklecvf/LBBAiBY0DMxmFCng5bfTYuj08gmh0BNWGo40Dan8BGOHiKCmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1066449},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"dev":"npm run copy:css && tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"tsup && npm run copy:css","copy:css":"node -e \"require('fs').copyFileSync('src/styles.css','dist/styles.css')\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"anshupal1058","email":"anshupal1058@gmail.com"},"repository":{"url":"git+https://github.com/anshupal1058/react-charts-kit.git","type":"git"},"_npmVersion":"10.8.2","description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"20.19.5","dependencies":{"lodash":"4.17.21","d3-path":"3.1.0","echarts":"5.5.0","numeral":"2.0.6","chart.js":"4.4.1","d3-scale":"4.0.2","d3-shape":"3.2.0","date-fns":"2.30.0","recharts":"3.8.1","@nivo/bar":"0.94.0","@nivo/pie":"0.94.0","plotly.js":"2.29.1","@nivo/core":"0.94.0","@nivo/line":"0.94.0","apexcharts":"3.45.2","@nivo/chord":"0.94.0","html2canvas":"1.4.1","@nivo/icicle":"0.94.0","@nivo/sankey":"0.94.0","d3-hierarchy":"3.1.2","lucide-react":"0.344.0","@nivo/heatmap":"0.94.0","@nivo/treemap":"0.94.0","@nivo/sunburst":"0.94.0","@nivo/swarmplot":"0.94.0","react-chartjs-2":"5.2.0","react-plotly.js":"2.6.0","@nivo/radial-bar":"0.94.0","react-apexcharts":"1.4.1","echarts-for-react":"3.0.2","@nivo/circle-packing":"0.94.0","@sgratzl/chartjs-chart-boxplot":"4.2.5","@vnedyalk0v/react19-simple-maps":"^2.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^19.2.0","react-dom":"^19.2.0","typescript":"^5.5.4","@types/react":"^18.3.3","@types/lodash":"^4.17.0","@types/d3-path":"^3.1.0","@types/numeral":"^2.0.5","@types/d3-scale":"^4.0.8","@types/d3-shape":"^3.1.6","@types/react-dom":"^18.3.0","@types/d3-hierarchy":"^3.1.7"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/charts_0.1.2_1783059165418_0.2429342366192404","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onelogica/charts. Please update your dependency."},"0.1.3":{"name":"@anshupal1058/charts","version":"0.1.3","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"author":{"name":"anshupal1058"},"license":"MIT","_id":"@anshupal1058/charts@0.1.3","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"homepage":"https://github.com/anshupal1058/react-charts-kit#readme","bugs":{"url":"https://github.com/anshupal1058/react-charts-kit/issues"},"dist":{"shasum":"d3a69dae7c8fe8211222370e8035d3032ad62b28","tarball":"https://registry.npmjs.org/@anshupal1058/charts/-/charts-0.1.3.tgz","fileCount":9,"integrity":"sha512-W//FePhC+U4fMesB8kCQJs7WO/whcXL+U9LO1WJ+9qSD7VKAVhvUoL4zyvLaLluX8SQty+4U3XBG9EJp7qKceg==","signatures":[{"sig":"MEUCIQDBTj2JKtHnvuJPLTA+Y2cEXVJvNeQCo4hwWRI3WMVmbQIgZE+29oQofosrtW3n9tuWWYbq5rV0EHaLE/YwDFSLChc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1050641},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"dev":"npm run copy:css && tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"tsup && npm run copy:css","copy:css":"node -e \"require('fs').copyFileSync('src/styles.css','dist/styles.css')\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"anshupal1058","email":"anshupal1058@gmail.com"},"repository":{"url":"git+https://github.com/anshupal1058/react-charts-kit.git","type":"git"},"_npmVersion":"10.8.2","description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"20.19.5","dependencies":{"lodash":"4.17.21","d3-path":"3.1.0","echarts":"5.5.0","numeral":"2.0.6","chart.js":"4.4.1","d3-scale":"4.0.2","d3-shape":"3.2.0","date-fns":"2.30.0","recharts":"3.8.1","@nivo/bar":"0.99.0","@nivo/pie":"0.99.0","plotly.js":"2.29.1","@nivo/core":"0.99.0","@nivo/line":"0.99.0","apexcharts":"3.45.2","@nivo/chord":"0.99.0","html2canvas":"1.4.1","@nivo/icicle":"0.99.0","@nivo/sankey":"0.99.0","d3-hierarchy":"3.1.2","lucide-react":"0.468.0","@nivo/heatmap":"0.99.0","@nivo/treemap":"0.99.0","@nivo/sunburst":"0.99.0","@nivo/swarmplot":"0.99.0","react-chartjs-2":"5.3.1","react-plotly.js":"2.6.0","@nivo/radial-bar":"0.99.0","react-apexcharts":"1.4.1","echarts-for-react":"3.0.2","@nivo/circle-packing":"0.99.0","@sgratzl/chartjs-chart-boxplot":"4.2.5","@vnedyalk0v/react19-simple-maps":"^2.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^19.2.0","react-dom":"^19.2.0","typescript":"^5.5.4","@types/react":"^18.3.3","@types/lodash":"^4.17.0","@types/d3-path":"^3.1.0","@types/numeral":"^2.0.5","@types/d3-scale":"^4.0.8","@types/d3-shape":"^3.1.6","@types/react-dom":"^18.3.0","@types/d3-hierarchy":"^3.1.7"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/charts_0.1.3_1783061541482_0.7609688671024255","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onelogica/charts. Please update your dependency."},"0.1.4":{"name":"@anshupal1058/charts","version":"0.1.4","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"author":{"name":"anshupal1058"},"license":"MIT","_id":"@anshupal1058/charts@0.1.4","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"homepage":"https://github.com/anshupal1058/react-charts-kit#readme","bugs":{"url":"https://github.com/anshupal1058/react-charts-kit/issues"},"dist":{"shasum":"4518ce06061e36a2c623c9014b0278f661229e13","tarball":"https://registry.npmjs.org/@anshupal1058/charts/-/charts-0.1.4.tgz","fileCount":9,"integrity":"sha512-zmiuMCSl04lYwhfVDtIIaYh+cHUlavFUufaxICs/umcqrJJlRCgskmXPdAHXV/e2EkYNK5rwPGzRzIJdhkvC0g==","signatures":[{"sig":"MEQCIDmcjXzSBRHasDJOA3KoSirQg0o2kxhptVE9TvD3G+zYAiBFK45Kvu8u+nVdLUYz4SlENofECV/cPfOqfu4p59p44Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1193245},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"dev":"npm run copy:css && tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"tsup && npm run copy:css","copy:css":"node -e \"require('fs').copyFileSync('src/styles.css','dist/styles.css')\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"anshupal1058","email":"anshupal1058@gmail.com"},"repository":{"url":"git+https://github.com/anshupal1058/react-charts-kit.git","type":"git"},"_npmVersion":"10.8.2","description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"20.19.5","dependencies":{"lodash":"4.17.21","d3-path":"3.1.0","echarts":"5.5.0","numeral":"2.0.6","chart.js":"4.4.1","d3-scale":"4.0.2","d3-shape":"3.2.0","date-fns":"2.30.0","recharts":"3.8.1","@nivo/bar":"0.99.0","@nivo/pie":"0.99.0","plotly.js":"2.29.1","@nivo/core":"0.99.0","@nivo/line":"0.99.0","apexcharts":"3.45.2","@nivo/chord":"0.99.0","html2canvas":"1.4.1","@nivo/icicle":"0.99.0","@nivo/sankey":"0.99.0","d3-hierarchy":"3.1.2","lucide-react":"0.468.0","@nivo/heatmap":"0.99.0","@nivo/treemap":"0.99.0","@nivo/sunburst":"0.99.0","@nivo/swarmplot":"0.99.0","react-chartjs-2":"5.3.1","react-plotly.js":"2.6.0","@nivo/radial-bar":"0.99.0","react-apexcharts":"1.4.1","echarts-for-react":"3.0.2","@nivo/circle-packing":"0.99.0","@sgratzl/chartjs-chart-boxplot":"4.2.5","@vnedyalk0v/react19-simple-maps":"^2.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","react":"^19.2.0","react-dom":"^19.2.0","typescript":"^5.5.4","@types/react":"^18.3.3","@types/lodash":"^4.17.0","@types/d3-path":"^3.1.0","@types/numeral":"^2.0.5","@types/d3-scale":"^4.0.8","@types/d3-shape":"^3.1.6","@types/react-dom":"^18.3.0","@types/d3-hierarchy":"^3.1.7"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/charts_0.1.4_1783506285059_0.18309365143024947","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onelogica/charts. Please update your dependency."}},"time":{"created":"2026-06-23T08:44:01.323Z","modified":"2026-07-15T05:33:12.354Z","0.1.0":"2026-06-23T08:44:01.810Z","0.1.1":"2026-06-24T05:30:35.474Z","0.1.2":"2026-07-03T06:12:45.586Z","0.1.3":"2026-07-03T06:52:21.610Z","0.1.4":"2026-07-08T10:24:45.306Z"},"bugs":{"url":"https://github.com/anshupal1058/react-charts-kit/issues"},"author":{"name":"anshupal1058"},"license":"MIT","homepage":"https://github.com/anshupal1058/react-charts-kit#readme","keywords":["react","charts","dataviz","recharts","nivo","echarts","design-system"],"repository":{"url":"git+https://github.com/anshupal1058/react-charts-kit.git","type":"git"},"description":"A standardized, theme-consistent React chart component library wrapping Recharts, Nivo, Chart.js, ECharts, Plotly and D3.","maintainers":[{"name":"anshupal1058","email":"anshupal1058@gmail.com"}],"readme":"# @onelogica/charts — Standardized React Charting Library\n\nA unified, theme-consistent React chart component library wrapping **Recharts, Nivo, Chart.js, ECharts, Plotly, and D3**.\n\n- **Single Dataset Mapping**: Provide one canonical data shape and seamlessly switch between any chart variant in a group.\n- **Unified Design Standards**: All rendering engines share the exact same style tokens for fonts, colors, grids, animation, and tooltips.\n- **Smart Chart Switching**: Build dashboards where users can toggle between different visualizations at runtime.\n- **50+ Specialized Chart Variants**: Support for dumbbell, bullet, swimlane, Gantt, choropleth, radar, Sankey, force-directed graphs, and more.\n\n---\n\n## Installation\n\n```bash\npnpm add @anshupal1058/charts\n# or\nnpm install @anshupal1058/charts\n```\n\n*Note: Ensure `react` and `react-dom` (version 18 or 19) are installed in your project.*\n\n---\n\n## Quick Start\n\nImport the CSS styles once at the entry point of your application, wrap your tree in `ChartThemeProvider`, and render a `ChartGroup`:\n\n```tsx\nimport React from \"react\";\nimport { ChartThemeProvider, ChartGroup } from \"@onelogica/charts\";\nimport \"@onelogica/charts/styles.css\";\n\nconst data = [\n  { x: \"Jan\", revenue: 42000, cost: 31000 },\n  { x: \"Feb\", revenue: 48000, cost: 33000 },\n  { x: \"Mar\", revenue: 51000, cost: 36000 },\n];\n\nexport default function Dashboard() {\n  return (\n    <ChartThemeProvider>\n      <div style={{ maxWidth: 800, margin: \"40px auto\" }}>\n        <ChartGroup\n          group=\"CARTESIAN_1D\"\n          data={data}\n          title=\"Revenue Analysis\"\n          subtitle=\"Monthly revenue versus operating cost\"\n          height={350}\n          series={[\n            { key: \"revenue\", label: \"Revenue\" },\n            { key: \"cost\", label: \"Cost\" }\n          ]}\n        />\n      </div>\n    </ChartThemeProvider>\n  );\n}\n```\n\n---\n\n## Component APIs\n\n### 1. `ChartThemeProvider`\n\nMaintains the context for colors, typography, border radii, and transitions.\n\n```tsx\nimport { ChartThemeProvider, darkTheme } from \"@onelogica/charts\";\n\n// Use built-in dark theme\n<ChartThemeProvider theme={darkTheme}>\n  <App />\n</ChartThemeProvider>\n\n// Custom overrides\n<ChartThemeProvider\n  overrides={{\n    font: {\n      family: \"Geist, sans-serif\",\n      sizeLabel: 12,\n    },\n    color: {\n      palette: [\"#6366f1\", \"#10b981\", \"#f59e0b\"],\n    }\n  }}\n>\n  <App />\n</ChartThemeProvider>\n```\n\n### Per-chart configuration and native options\n\nEvery chart accepts `config` for portable customization and `engineOptions` for\nthe complete underlying renderer API.\n\n```tsx\n<ChartGroup\n  group=\"MULTI_SERIES\"\n  data={data}\n  config={{\n    colors: [\"#7c3aed\", \"#ec4899\"],\n    fontSize: 14,\n    legend: { show: true, position: \"right\" },\n    grid: { show: false },\n  }}\n  engineOptions={{\n    echarts: { toolbox: { show: true } },\n    echartsProps: {\n      onEvents: { click: (params) => console.log(params) },\n    },\n  }}\n/>\n```\n\nNative keys include `recharts`, `nivo`, `echarts`, `echartsProps`, `chartjs`,\n`chartjsProps`, `apex`, `apexProps`, `plotlyLayout`, `plotlyConfig`,\n`plotlyProps`, and `map`. Native options are applied last.\n\n### 2. `ChartGroup`\n\nThe layout orchestrator that handles switching between multiple chart variants within a visual category.\n\n| Prop | Type | Description |\n| :--- | :--- | :--- |\n| `group` | `ChartGroupName` | Category of charts: `SCALAR_KPI`, `CARTESIAN_1D`, `MULTI_SERIES`, `PROPORTIONAL`, `HIERARCHICAL`, `MULTI_DIMENSIONAL`, `STATISTICAL_DISTRIBUTION`, `FLOW_RELATIONAL`, `GEOSPATIAL`, `FINANCIAL_TEMPORAL`, `RANGE_SPAN`, `TEMPORAL_INTERVALS`, `MATRIX_CALENDAR` |\n| `data` | `any` | Dataset corresponding to the group's input requirements |\n| `title` | `string` | Optional title displayed in header |\n| `subtitle` | `string` | Optional subtitle/description |\n| `height` | `number` | Chart body height (default: `360`) |\n| `loading` | `boolean` | Set true to show visual skeleton/spinner |\n| `exportable` | `boolean` | Shows or hides the PNG download button (default: `true`) |\n| `showSwitcher` | `boolean` | Shows or hides the dropdown selector (default: `true`) |\n\n### 3. `UniversalChart`\n\nIf you want to render a specific chart type directly without the interactive switcher dropdown, use `UniversalChart`:\n\n```tsx\nimport { UniversalChart } from \"@onelogica/charts\";\n\n<UniversalChart\n  type=\"donut\"\n  data={[\n    { name: \"SaaS\", value: 45 },\n    { name: \"Services\", value: 30 },\n    { name: \"Hardware\", value: 25 },\n  ]}\n  height={300}\n/>\n```\n\n---\n\n## Supported Chart Types by Group\n\n### Scalar & KPI (`SCALAR_KPI`)\n- `gauge`: Speedometer-style dial\n- `kpi-card`: Standalone highlighted key indicator value\n- `sparkline-card`: Micro trendline layout\n- `linear-progress`: Segmented horizontal bars\n\n### 1D Cartesian (`CARTESIAN_1D`)\n- `line` / `step-line` / `bar` / `area` / `waterfall` / `lollipop` / `dot-plot`\n\n### Multi-Series Cartesian (`MULTI_SERIES`)\n- `grouped-bar` / `stacked-bar` / `100-stacked-bar` / `multi-line` / `stacked-area` / `combo-chart` / `radar`\n\n### Proportional & Part-to-Whole (`PROPORTIONAL`)\n- `pie` / `donut` / `half-donut` / `radial-bar` / `funnel` / `pyramid` / `polar-area` / `waffle` / `treemap`\n\n### Hierarchical Tree Structure (`HIERARCHICAL`)\n- `sunburst` / `circle-packing` / `icicle` / `treemap`\n\n### Multi-Dimensional (`MULTI_DIMENSIONAL`)\n- `scatter`: Cartesian point coordinates\n- `bubble`: Size-scaled bubble markers\n- `3d-scatter`: Interactive WebGL 3D coordinate space\n\n### Relation & Flow (`FLOW_RELATIONAL`)\n- `sankey` / `alluvial` / `chord` / `force-graph`\n\n### Geospatial (`GEOSPATIAL`)\n- `bubble-map` / `choropleth` / `connection-map` / `hexbin-map`\n\n### Range & Whiskers (`RANGE_SPAN`)\n- `dumbbell`: Interval dots connected by baseline whiskers\n- `floating-bar`: Stacked range blocks\n- `bullet`: Comparative targets and bars\n- `error-bar`: Explicit error margin intervals\n\n### Temporal Intervals (`TEMPORAL_INTERVALS`)\n- `gantt` / `timeline` / `swimlane`\n\n### Matrices & Calendars (`MATRIX_CALENDAR`)\n- `calendar-heatmap`: GitHub-style grid colored by date values\n- `heatmap-grid`: Month-over-day block layout\n- `correlation-matrix`: Diverging coefficient matrix\n\n---\n\n## Formatting Utilities\n\nExported lightweight string formatters:\n```ts\nimport { formatCompact, formatCurrency, formatPercent } from \"@onelogica/charts\";\n\nformatCompact(1500000); // \"1.5M\"\nformatCurrency(350.5);  // \"$350.50\"\nformatPercent(0.875);   // \"87.5%\"\n```\n\n---\n\n## License\n\nMIT © anshupal1058\n","readmeFilename":"README.md"}