-
Notifications
You must be signed in to change notification settings - Fork 350
Why we decided to start billboard.js?
As you know, billboard.js
is a forked project from the original popular chart library C3.js.
In the early beginning, we used C3.js library and liked its easy interface and functionality.
C3.js depends on D3.js, but we quickly realized that C3.js couldn't be run on the latest version of D3.js (version 4+). And D3.js has changed a lot from its previous version v4, without providing the backward compatibility.
It was clear that without the support of D3.js v4+, there will be a lot of difficulties forward.
We also tried to contribute some new features, but soon figured out that the project was inactive for several months, and it seemed to have almost discontinued(ref. Not being maintained?).
But luckily enough, we found some activities going on for the next release on C3.js(ref. Refactoring Plan).
UPDATE:
Unfortunately, C3.js refactory plan didn't go well and project returned to uncertainty state.
Once agin, discontinuity and worries arose among users and we wanted to gather the efforts to billboard.js.
Hence, we wrote an open letter to maintainers and to the community proposing to 'unifying efforts'.
The attempt didn't go well, and finally C3.js maintainer left a short comment on one of the project issue, expressing the discontinuation of the C3.js project.
We currently stop maintaining the repo. Please consider using billboard.js
We worked very hard to solve the issues below for the first release.
Support D3 v4Remove SVGPathSeg polyfill (due to removal from Chrome 48)Mobile-friendly environmentTransition to ES6Update build tools using webpackOptimization of SVG node elements on generating chartDocumentation of the source code with jsdoc
This is just the beginning, and we know it isn't perfect.
But with your attention and participation, we'll keep going further.
- Why we decided to start billboard.js?
- Comparison table
- How to migrate from C3.js?
- Who's using billboard.js
- Third party applications
- Themes
- Roadmap
- Architecture & Event
- Plugin Interface
- Release workflow
- How behaves for dynamic loading?
- How tooltip behaves on grouped option?
- How to load as ESM directly from the browser?
- How to implement realtime chart?
- How to bundle for legacy browsers?
- How to generate chart image in Node.js environment?
- Understanding padding