Collection of Vue components for data visualization in OpenEBench.
- 🪄 Go to the live demo to see the components in action.
- 📖 Check the documentation for details on how to use the components.
- 📦 This package is available through npmjs.
To install the package run:
npm install @inb/oeb_visualizations
If you want to contribute to this project, please read the contributing guidelines first.
This project is built using Vue.js. The components are written in Vue and the bundling is done using Rollup. The rollup configuration is in the rollup.config.js
file and the main entry point is the src/index.js
file, all the components are exported from this file.
The components are written in the src/components
folder. Each component should be in a separate folder and should contain the .vue
file and, optionally, a .scss
file. In order to be used in other applications, the package should be built, which creates a dist
folder with the compiled files.
The documentation is built using Material for MkDocs. The content of the documentation is written in markdown and should be added to the docs
folder.
The configuration of the documentation is in the mkdocs.yml
file. This file contains the structure of the documentation, including navigation, the theme used, etc. More information about how to configure the documentation can be found in the documentation.
If you want to add a new visualization, you should create a new component for it. Follow the steps below:
-
Create the new component in the
src/components
folder. A component can be written in only one file or, if it is complex, it can be divided into smaller components in a folder. -
Add the new component to the
index.js
, as following:import newComponent from './components/newComponent.vue' export { newComponent, ... }
If the new component is a complex component, it should be divided into smaller components. In this case, the
index.js
file should export the smaller components and the main component.
The documentation should be updated to include the new component.
To document a new component, add the new component to the documentation as a single file in the docs/components
folder. Documentation is written in markdown and should contain at least the following sections:
- Description of how the data being represented.
- How to use it.
- Example of usage.
- Props and events.
To build the package locally, run:
npm run build
This will create a dist
folder with the compiled files.
The component will be available for other applications running locally to use.
To use the component in another application, you should link the package locally. To do so, run:
npm link
Then, in the application where you want to use the component, run:
npm link @inb/oeb_visualizations
This will link the local package to the application.
The documentation is built using mkdocs. To serve the documentation locally, run:
mkdocs serve
This will start a local server and the documentation will be available at http://localhost:8000/
.
To publish a new version of the package to npm, follow the steps below:
- Update the version in the
package.json
file. If all commit messages follow the conventional commits standard, you can use thecz bump --version-scheme semver
command to update the version and theCHANGELOG.md
file. - Run the
npm run build
command to build the package. - Run the
npm publish
command to publish the package to npmjs.
This package is published under the @inb
scope as @inb/oeb_visualizations
.
The package is available at https://www.npmjs.com/package/@inb/oeb_visualizations.
The documentation is built and deployed to the gh-pages
branch using GitHub Actions. Each time a new commit is pushed to the main
branch, the documentation is built and deployed to the gh-pages
branch.
The documentation is available at https://inab.github.io/oeb-visualizations/.