Introduction
When building dashboards or data-centric applications, visualizations and interactive elements like dropdowns play a significant role.
So In this tutorial, I’ll walk you through integrating Chart.js, React-Chartjs-2, and React-Select into a Vite React project.
Setting Up Your Vite React Project
Start by creating a new Vite React project. Run the following command:
npm create vite@latest cov-dashboard -- --template react
Navigate into the project folder:
cd cov-dashboard
Install dependencies:
npm install
Installing Chart.js, React-Chartjs-2, and React-Select
To include these libraries in your project, install them with:
npm install chart.js react-chartjs-2 react-select
📝 Note: Ensure you use
npm
instead ofyarn
if you prefer a consistent package management approach.
Creating a Simple Bar Chart
Here’s how you can create a Bar Chart using react-chartjs-2
:
Component: BarChart.jsx
import React from 'react'; import { Bar } from 'react-chartjs-2'; import Chart from 'chart.js/auto'; const data = { labels: ['Jan', 'Feb', 'Mar'], datasets: [ { label: 'Sales', data: [30, 50, 70], backgroundColor: ['rgba(75, 192, 192, 0.6)'], }, ], }; const BarChart = () => <Bar data={data} />; export default BarChart;
Adding a Dynamic Dropdown
Let’s add a dropdown menu with react-select
:
Component: Dropdown.jsx
import React from 'react'; import Select from 'react-select'; const options = [ { value: 'chocolate', label: 'Chocolate' }, { value: 'vanilla', label: 'Vanilla' }, { value: 'strawberry', label: 'Strawberry' }, ]; const Dropdown = () => <Select options={options} />; export default Dropdown;
Integrating the Components
Import and use the components in your main App.jsx
:
Main App:
import React from 'react'; import BarChart from './BarChart'; import Dropdown from './Dropdown'; const App = () => ( <div> <h1>Dashboard</h1> <BarChart /> <Dropdown /> </div> ); export default App;
Conclusion
With this simple minimal setup, you’ve learnt how to successfully add powerful tools for visualizations and interactive UI components in your Vite React project.
Top comments (0)