How to create a beautiful progress bar using bootstrap and Contrast
Tags: tailwindcss, react, webdev, programming
Published: 2021-08-02 11:23:31

---
title: How to create a beautiful progress bar using bootstrap and Contrast
published: true
date: 2021-04-20 01:16:04 UTC
tags: [tailwindcss, react, webdev, programming]
canonical_url: https://www.devwares.com/blog//create-progress-with-contrast
cover_image: https://devwares.com/blog/images/reactArticle6.png
---

## How to create linear and circular progress bars in react.

Progress bar is a component which displays progress of a process in which user are involved. Their color, shape, and animation can be customized with the contrast progress bar component.
Contrast also known as CDBReact is a react library which is an Elegant UI kit with full bootstrap support that has reusable components for building mobile-first, responsive websites, and web apps.

**Prerequisites**

The progress bars would be built using React, Bootstrap, and CDBReact. You don’t need to have any previous knowledge of CDBReact but the following are necessary:
- JavaScript knowledge 
- Basic React Knowledge
- Basic Bootstrap knowledge
- NPM installed

The circular progress bar should look like the image below

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6xxmtikye21qlv4okm1m.png)

**Setup**

First Check that you have node installed. To do this, run the following command in your terminal.

**Code**

```javascript
node-v
```

This should show you the current version of node you have installed on your machine.

If you don’t have nodejs installed, download it [here](https://nodejs.org/en/download).

Installing node also installs npm on your PC but you can still confirm using npm-v. Now that we have node installed, we can start up our React project by going to the directory of our choice and running

**Code:**

```javascript
npx create-react-app progressbar-app
```

I named the project progressbar-app but you can use any name of your choice.

## Installing CDBReact-pro

In order to use the date-picker you need to use the pro version. And you can Install the cdbreact-pro package in your project (we recommend adding the file to the root of the project.) by running

```javascript
npm install --save ./path-to-the-cdbreact-pro-tgz-file
```

Or using Yarn

```javascript
yarn add ./path-to-the-cdbreact-pro-tgz-file
```

Note that we don’t need to install bootstrap or add it anywhere in our project as CDBReact does that for us upon installation.

## Circular progress bar

Let us go ahead to create a file named circularpro.js which would contain our progress bar component. Import the various progress bar components that we’ll be using.

Code:
```jsx
import React from "react";
import { CDBCircularProgress, CDBContainer } from "cdbreact-pro";
```

in the code above, we import React from react and two components from the CDBReact which are:

- CDBContainer
- CDBCircularProgress.

**Code:**

```jsx

export const Progress = () => {
  return (
    <CDBContainer>
            <CDBCircularProgress
              value={25}
              max={100}
              min={0}
              text={`${25}%`}
            />
            <CDBCircularProgress
              value={50}
              max={100}
              min={0}
              text={`${50}%`}
              color="primary"
            />
            <CDBCircularProgress
              value={95}
              max={100}
              min={0}
              color="secondary"
              text={`${95}%`}
            />
            <CDBCircularProgress
              value={35}
              max={100}
              min={0}
              color="danger"
              text={`${35}%`}
            />
            <CDBCircularProgress
              value={47}
              max={100}
              min={0}
              color="info"
              text={`${47}%`}
            />
            <CDBCircularProgress
              value={100}
              max={100}
              min={0}
              color="success"
              text={`${100}%`}
            />
    </CDBContainer>
  );
};

export default Progress;
```

In the code above, we added some styling to the circular progress bar to make it look appealing.

Now, we can render the component in the app.js.
**Code:**

```jsx
import './App.css';
import tab from './ circularpro.js ';
import { BrowserRouter as Router } from 'react-router-dom';

function App() {
  return (
    <Router>
      <div className="App">
       <Progress  />
      </div>
    </Router>
  );
}

export default App;
```
The page will look like the image below.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6xxmtikye21qlv4okm1m.png)


## Linear progress bar

For the linear progress bar we will create a file named linearpro.js which would contain our progress bar component. 

## Installing CDBReact-pro

In order to use the date-picker you need to use the pro version. And you can Install the cdbreact-pro package in your project (we recommend adding the file to the root of the project.) by running

```javascript
npm install --save ./path-to-the-cdbreact-pro-tgz-file
```

Or using Yarn

```javascript
yarn add ./path-to-the-cdbreact-pro-tgz-file
```

Note that we don’t need to install bootstrap or add it anywhere in our project as CDBReact does that for us upon installation.

Our linear progress bar should look like this image below when we are done 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g9xdji8penefzbhky7wa.png)


Import the various progress bar components that we’ll be using.

**Code:**

```jsx
import React from "react";
import { CDBProgress, CDBContainer } from "cdbreact-pro";
```

the code above imported React from react, the CDBProgress and the CDBContainer from cdbreact

**Code:**

```jsx
export const Progress = () => {
  return (
    <CDBContainer>
              <CDBProgress
                value={10}
                text={`${10}%`}
                colors="primary"
              />
              <CDBProgress
                value={20}
                text={`${20}%`
                colors="secondary"
              />
              <CDBProgress
                value={70}
                text={`${70}%`}
                colors="success"
              />
              <CDBProgress
                value={40}
                text={`${40}%`}
                colors="danger"
              />
              <CDBProgress
                value={90}
                text={`${90}%`}
                colors="info"
              />
              <CDBProgress
                value={60}
                text={`${60}%`}
                colors="warning"
              />
    </CDBContainer>
  );
};
export default Progress;
```

This code adds features to the linear progress bar and is enclosed in a CDBContainer component from contrast.


**Code:**

```jsx
import './App.css';
import tab from './ linearpro.js ';
import { BrowserRouter as Router } from 'react-router-dom';

function App() {
  return (
    <Router>
      <div className="App">
       < Progress />
      </div>
    </Router>
  );
}
export default App;
```

in this code we rendered our circular progress bar in our app.js file.

Your page should look like the image below 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g9xdji8penefzbhky7wa.png)

## Resources 

- [Link to the Github Code](https://github.com/Iheanacho-ai/Tailwind-react-modal)

- [Link to the Tailwind CSS Modals Docs](https://tailwindui.com/components/application-ui/overlays/modals)

- [Get Tailwind CSS PRO](https://tailwindui.com/pricing)

- [Get Contrast PRO](https://www.devwares.com/product/contrast-pro)

- [Link to the modal documentation](https://www.devwares.com/docs/contrast/javascript/components/modal)

- [How to create Tailwind CSS Modal](https://www.devwares.com/blog/how-to-create-tailwind-css-modal)

- [How to use tailwind CSS in HTML]  (https://www.devwares.com/blog/how-to-use-tailwind-css-in-HTML)

- [Get Contrast PRO](https://www.devwares.com/product/contrast-pro)

- [Why tailwind CSS is good](https://www.devwares.com/blog/why-tailwind-css-is-good)

- [How to use Tailwind CSS in Nextjs](https://www.devwares.com/blog/tailwind-css-in-nextjs)

- [How to create Tailwind CSS Components for your Website](https://www.devwares.com/blog/how-to-create-tailwind-css-components-for-your-website)

- [How to create Tailwind CSS Animation](https://www.devwares.com/blog/create-animation-with-tailwind-css/)

- [Tailwind grid-How to use tailwind CSS grid templates in your project](https://www.devwares.com/blog/how-to-add-tailwind-css-grid-to-your-project/)

- [How to create a Beautiful Responsive Navigation bar Using Tailwind CSS](https://www.devwares.com/blog/how-to-create-a-beautiful-responsive-navbar-using-tailwind-css/)

- [Tailwind form-How to create and style a Responsive Form using Tailwind CSS](https://www.devwares.com/blog/how-to-create-and-style-a-responsive-form-using-tailwindcss/)

- [Tailwind CSS Flex: How to use Tailwind CSS Flex](https://www.devwares.com/blog/how-to-use-tailwind-css-flex/)

- [How to use tailwind CSS padding, margin and border in your project](https://www.devwares.com/blog/how-to-use-tailwind-css-padding-margin-and-border-in-your-project/)

- [How to use Tailwind CSS Width](https://www.devwares.com/blog/Tailwind-width/)

- [Tailwind CSS CDN-How to use the Tailwind CSS JIT CDN](https://www.devwares.com/blog/how-to-use-the-tailwind-css-JIT-CDN/)

- [How to set up your first Tailwind CSS Project](https://www.devwares.com/blog/setting-up-your-first-project-using-tailwind-css/)

- [How to use Tailwind CSS in HTML](https://www.devwares.com/blog/how-to-use-tailwind-css-in-HTML/)

- [Tailwind CSS table-How to Create Tailwind CSS tables](https://www.devwares.com/blog/how-to-create-tailwind-css-tables/)

- [How to set up your first Tailwind CSS Project](https://www.devwares.com/blog/setting-up-your-first-project-using-tailwind-css/)

- [Why is tailwind CSS better than other CSS framework](https://www.devwares.com/blog/why-tailwind-css-is-good/)

- [10 tailwind CSS templates and themes](https://www.devwares.com/blog/tailwind-css-10-templates-and-themes/)

- [How to add tailwind CSS colors and Fonts to your project](https://www.devwares.com/blog/how-to-add-tailwind-css-colors-and-fonts-to-your-project/)

- [Differences between Tailwind CSS and SASS](https://www.devwares.com/blog/differences-between-tailwind-css-and-sass/)

- [Differences Between Tailwind CSS and Bootstrap](https://www.devwares.com/blog/diffrences-between-tailwind-css-and-bootstrap/)

- [10 Awesome projects built with Tailwind CSS](https://www.devwares.com/blog/awesome-10-projects-built-with-tailwind/).

- [How to install Tailwind CSS in Vue.js](https://www.devwares.com/blog/how-to-install-tailwind-css-in-vuejs/).

- [How to use Tailwind CSS in React](https://www.devwares.com/blog/how-to-use-tailwind-css-in-react/)

- [How to install Tailwind CSS with Laravel](https://www.devwares.com/blog/how-to-install-tailwind-css-in-laravel/)

- [How to create react date picker](https://www.devwares.com/blog/create-datepicker-with-contrast/)

- [React bootstrap 5 form-How to create React forms](https://www.devwares.com/blog/how-to-create-and-style-a-responsive-form-using-tailwindcss/).

- [How to create a beautiful React multiselect](https://www.devwares.com/blog/create-multiselect-with-contrast/).

- [How to create a beautiful React Bootstrap progress bar](https://www.devwares.com/blog/create-progress-with-contrast/).

- [How to create a beautiful React Bootstrap select with icons](https://www.devwares.com/blog/create-select-with-contrast/).

- [How to create a beautiful Bootstrap 5 stepper](https://www.devwares.com/blog/create-stepper-with-contrast/)

- [How to create a beautiful React Bootstrap table]
(https://www.devwares.com/blog/create-tables-with-contrast/)

- [How to create beautiful React Bootstrap tabs](https://www.devwares.com/blog/create-tabs-with-contrast/)

- [How to create a Beautiful Responsive Navigation bar Using Tailwind CSS](https://www.devwares.com/blog/how-to-create-a-beautiful-responsive-navbar-using-tailwind-css/)

- [Tailwind Modal-How to create a React Modal using Tailwind CSS.](https://www.devwares.com/blog/how-to-create-a-react-modal-using-tailwind-css/)

- [How to create a Bootstrap 5 Modal.](https://www.devwares.com/blog/how-to-create-a-bootstrap5-modal/)

- [How to Create React Tabs with Tailwind CSS](https://www.devwares.com/blog/how-to-create-react-tabs-with-tailwind-css/)

- [How to implement dark mode in React using tailwind css](https://www.devwares.com/blog/how-to-implement-dark-mode-in-tailwind-css/)

- [How to Implement a React Step Progress Bar Using Tailwind CSS](https://www.devwares.com/blog/how-to-implement-a-react-step-progress-bar-using-tailwind-css/)