Simple Progressbar For Vuejs

Simple Progressbar For Vuejs

A simple Vue.js progressbar component that uses Hardware-Accelerated CSS for the smooth and high-performance animations.


[CSS GPU Animation] Simple progressbar for vuejs

npm license npm


Demo here


npm install vue-progressbar-component or yarn add vue-progressbar-component


The most common use case is to register the component globally.

// in your main.js or similar file
import Vue from 'vue'
import ProgressBar from 'vue-progressbar-component'

Vue.component('progress-bar', ProgressBar)

Alternatively you can do this to register the components:

// HelloWorld.vue
import ProgressBar from 'vue-progressbar-component'

export default {
  name: 'HelloWorld',
  components: {

On your page you can now use html like this:

<!-- simple progress bar -->

<!-- add class (color) -->

<!-- change start origin from right -->

<!-- change scaleX to scaleY and origin bottom -->


// example or use it
@import "./node_modules/vue-progressbar-component/src/scss/progressbar";

Do you like my theme but not the colors or paddings, ...?

// overwrite variables
$progressbar-height: 2rem;
$progressbar-background: gray;
// find more variables in /src/scss/_progressbar-variables.scss

@import "./node_modules/vue-progressbar-component/src/scss/progressbar";


Prop Type Required Default Description
value Number false 0 Progress bar width
barClass String false '' Bar class
origin String false left Set origin
scale String false X Set scaleX or scaleY

Build Setup

# install dependencies
npm install

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

# build for production and view the bundle analyzer report
npm run build --report

# run unit tests
npm run unit

# run all tests
npm test

Github Repository

Tags: #VueJs