All Projects → crisbeto → Angular Svg Round Progressbar

crisbeto / Angular Svg Round Progressbar

Licence: mit
Angular module that uses SVG to create a circular progressbar

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Angular Svg Round Progressbar

Hgcircularslider
A custom reusable circular / progress slider control for iOS application.
Stars: ✭ 2,240 (+208.54%)
Mutual labels:  progress, progress-circle
Jocircularslider
A highly customisable and reusable circular slider for iOS applications.
Stars: ✭ 128 (-82.37%)
Mutual labels:  progress, progress-circle
Mkringprogressview
⭕️ Ring progress view similar to Activity app on Apple Watch
Stars: ✭ 1,140 (+57.02%)
Mutual labels:  progress, progress-circle
mp-progress
专注于小程序圆环形进度条的小工具
Stars: ✭ 72 (-90.08%)
Mutual labels:  progress, progress-circle
Spinners React
Lightweight SVG/CSS spinners for React
Stars: ✭ 254 (-65.01%)
Mutual labels:  svg, progress
React Sweet Progress
A way to quickly add a progress bar to react app 🌈
Stars: ✭ 239 (-67.08%)
Mutual labels:  progress, progress-circle
Iprogresshud
An elegant, lightweight and responsive progress HUD for iOS app with very simple usage. Available 32 indicators by NVActivityIndicatorView.
Stars: ✭ 66 (-90.91%)
Mutual labels:  progress, progress-circle
React Circle
Renders a svg circle + progress, it just works 💘
Stars: ✭ 925 (+27.41%)
Mutual labels:  svg, progress
react-sweet-progress
A way to quickly add a progress bar to react app 🌈
Stars: ✭ 250 (-65.56%)
Mutual labels:  progress, progress-circle
Arslineprogress
iOS progress bar, replacement for the default activity indicator.
Stars: ✭ 434 (-40.22%)
Mutual labels:  progress, progress-circle
Wheelnav
Animated wheel navigation JavaScript library based on Raphaël.js (SVG/VML). It can be a pie menu (radial menu, circular menu) and many more.
Stars: ✭ 661 (-8.95%)
Mutual labels:  svg
Linuxtimeline
Linux Distributions Timeline
Stars: ✭ 662 (-8.82%)
Mutual labels:  svg
Leanify
lightweight lossless file minifier/optimizer
Stars: ✭ 694 (-4.41%)
Mutual labels:  svg
React Native Circular Slider
React Native component for creating circular slider 🔘
Stars: ✭ 716 (-1.38%)
Mutual labels:  svg
Macaw
Powerful and easy-to-use vector graphics Swift library with SVG support
Stars: ✭ 5,756 (+692.84%)
Mutual labels:  svg
React Native Qrcode Svg
A QR Code generator for React Native based on react-native-svg and node-qrcode.
Stars: ✭ 693 (-4.55%)
Mutual labels:  svg
Url Encoder
🛸 Url-encoder, useful for SVG
Stars: ✭ 650 (-10.47%)
Mutual labels:  svg
Alphatab
alphaTab is a cross platform music notation and guitar tablature rendering library.
Stars: ✭ 647 (-10.88%)
Mutual labels:  svg
Browser Logos
🗂 High resolution web browser logos
Stars: ✭ 5,538 (+662.81%)
Mutual labels:  svg
Bounty
Javascript and SVG odometer effect library with motion blur
Stars: ✭ 724 (-0.28%)
Mutual labels:  svg

Angular SVG round progressbar

Angular module that uses SVG to create a circular progressbar

Demo

Click here for the Angular 1.x version

Install

First you have to install the module through npm:

npm install angular-svg-round-progressbar --save

Afterwards you need to import the RoundProgressModule in your module:

import {NgModule} from '@angular/core';
import {RoundProgressModule} from 'angular-svg-round-progressbar';

@NgModule({
  imports: [RoundProgressModule]
})
export class YourModule {};

If you're using SystemJS as your module loader, there is also a UMD bundle at ./node_modules/angular-svg-round-progressbar/bundles/angular-svg-round-progressbar.umd.js.

Options

Name Description Required Default value Possible values
current The current progress. Limited by the max option. Yes undefined number
max The progress' maximum value. Yes undefined number
radius Radius of the circle. No 125 number
color The color of the current value on the circle. No #45ccce string
background Color of the circle's background. No #eaeaea string
stroke Specifies the circle's thickness. No 15 number
semicircle Whether the progressbar should be a full circle or a semicircle. No false boolean
clockwise Whether the progressbar should rotate clockwise or counter-clockwise. No true boolean
responsive Whether the progressbar should fit inside its parent container. Note Turning this option on will override the specified radius in order to make the circle fit in its parent. The radius to stroke ratio won't change. No false boolean
rounded Whether the current progress ending should be rounded or straight. No false boolean
duration The duration of the animation. Pass 0 for no animation. No 800 number
animationDelay Milliseconds to wait before starting an animation. No 0 number
onRender Callback function that gets executed every time the circle is animated. The function gets called with the current progress as it is being animated. No undefined Function
animation The easing function that will be used when animating. No easeOutCubic linearEase
easeInQuad
easeOutQuad
easeInOutQuad
easeInCubic
easeOutCubic
easeInOutCubic
easeInQuart
easeOutQuart
easeInOutQuart
easeInQuint
easeOutQuint
easeInOutQuint
easeInSine
easeOutSine
easeInOutSine
easeInExpo
easeOutExpo
easeInOutExpo
easeInCirc
easeOutCirc
easeInOutCirc
easeInElastic
easeOutElastic
easeInOutElastic
easeInBack
easeOutBack
easeInOutBack
easeInBounce
easeOutBounce
easeInOutBounce

Minimal example:

<round-progress [current]="current" [max]="max"></round-progress>

Full example:

<round-progress
    [current]="current"
    [max]="max"
    [color]="'#45ccce'"
    [background]="'#eaeaea'"
    [radius]="125"
    [stroke]="20"
    [semicircle]="true"
    [rounded]="true"
    [clockwise]="false"
    [responsive]="false"
    [duration]="800"
    [animation]="'easeInOutQuart'"
    [animationDelay]="0"
    (onRender)="doSomethingWithCurrentValue($event)"></round-progress>

Configuring the default values

The module comes with some pre-configured options for things like colors, size, stroke etc. If these don't match your app's design, you can change the global defaults by providing a new value for the ROUND_PROGRESS_DEFAULTS injection token. Whenever an option isn't defined on a round-progress element, it's value will be taken from the defaults.

import {NgModule} from '@angular/core';
import {
  RoundProgressModule,
  RoundProgressConfig,
  ROUND_PROGRESS_DEFAULTS
  } from 'angular-svg-round-progressbar';

@NgModule({
  imports: [RoundProgressModule],
  providers: [{
    provide: ROUND_PROGRESS_DEFAULTS,
    useValue: {
      color: '#f00',
      background: '#0f0'
    }
  }]
})
export class YourModule {};

Browser support

  • Internet Explorer 9+
  • Firefox 28.0+
  • Chrome 31+
  • Safari 5.1+
  • and pretty much any browser that supports SVG

Note: Some older browsers may require (a polyfill for requestAnimationFrame). Read more about the requestAnimationFrame browser support.

Development

  • npm i to install development dependencies.
  • npm lint to lint the source files.
  • npm start to run a development server. Go to localhost:4200 to see the demo.
  • npm run build-lib to build the library in production mode.
  • npm run build-demo to build the demo in production mode.
  • npm run release-lib to build the library and release it to npm.
  • npm run release-demo to build the demo and deploy it to GitHub Pages.

Credits

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].