README.md
GitHub-inspired modern, intuitive and responsive charts with zero dependencies
<p align="center"> <a href="https://bundlephobia.com/result?p=frappe-charts"></a>
Explore Demos - Edit at CodeSandbox - Documentation
</div> </div>Frappe Charts is a simple charting library with a focus on a simple API. The design is inspired by various charts you see on GitHub.
ERPNext needed a simple sales history graph for its user company master to help users track sales. While using c3.js for reports, the library didn’t align well with our product’s classic design. Existing JS libraries were either too complex or rigid in their structure and behavior. To address this, I decided to create a library for translating value pairs into relative shapes or positions, focusing on simplicity.
npm install frappe-charts
Import in your project:
import { Chart } from 'frappe-charts'
// or esm import
import { Chart } from 'frappe-charts/dist/frappe-charts.esm.js'
// import css
import 'frappe-charts/dist/frappe-charts.min.css'
Or directly include script in your HTML
<script src="https://unpkg.com/[email protected]/dist/frappe-charts.min.umd.js"></script>
const data = {
labels: ["12am-3am", "3am-6pm", "6am-9am", "9am-12am",
"12pm-3pm", "3pm-6pm", "6pm-9pm", "9am-12am"
],
datasets: [
{
name: "Some Data", chartType: "bar",
values: [25, 40, 30, 35, 8, 52, 17, -4]
},
{
name: "Another Set", chartType: "line",
values: [25, 50, -10, 15, 18, 32, 27, 14]
}
]
}
const chart = new frappe.Chart("#chart", { // or a DOM element,
// new Chart() in case of ES6 module with above usage
title: "My Awesome Chart",
data: data,
type: 'axis-mixed', // or 'bar', 'line', 'scatter', 'pie', 'percentage'
height: 250,
colors: ['#7cd6fd', '#743ee2']
})
cd into project directorynpm installnpm i npm-run-all -D (optional --> might be required for some developers)npm run dev </picture>
</a>