react-native-progress

Progress indicators and spinners for React Native using ReactART

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
react-native-progress
3,5861235.0.15 months ago9 years agoMinified + gzip package size for react-native-progress in KB

Readme

react-native-progress
Progress indicators and spinners for React Native using React Native SVG.
progress-demo

Installation

$ npm install react-native-progress --save

React Native SVG based components

To use the Pie or Circle components, you need to install React Native SVG in your project.

Usage

Note: If you don't want the React Native SVG based components and it's dependencies, do a deep require instead: import ProgressBar from 'react-native-progress/Bar';.
import * as Progress from 'react-native-progress';

<Progress.Bar progress={0.3} width={200} />
<Progress.Pie progress={0.4} size={50} />
<Progress.Circle size={30} indeterminate={true} />
<Progress.CircleSnail color={['red', 'green', 'blue']} />

Properties for all progress components

| Prop | Description | Default | | ------------------------------------ | ---------------------------------------------------------------------------- | ---------------------- | | animated | Whether or not to animate changes to progress. | true | | indeterminate | If set to true, the indicator will spin and progress prop will be ignored. | false | | indeterminateAnimationDuration | Sets animation duration in milliseconds when indeterminate is set. | 1000 | | progress | Progress of whatever the indicator is indicating. A number between 0 and 1. | 0 | | color | Fill color of the indicator. | rgba(0, 122, 255, 1) | | unfilledColor | Color of the remaining progress. | None | | borderWidth | Width of outer border, set to 0 to remove. | 1 | | borderColor | Color of outer border. | color |

Progress.Bar

All of the props under Properties in addition to the following:
| Prop | Description | Default | | --------------------- | ------------------------------------------------------------------------------ | ------------------- | | width | Full width of the progress bar, set to null to use automatic flexbox sizing. | 150 | | height | Height of the progress bar. | 6 | | borderRadius | Rounding of corners, set to 0 to disable. | 4 | | useNativeDriver | Use native driver for the animations. | false | | animationConfig | Config that is passed into the Animated function. | { bounciness: 0 } | | animationType | Animation type to animate the progress, one of: decay, timing, spring. | spring |

Progress.Circle

All of the props under Properties in addition to the following:
| Prop | Description | Default | | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ------------------ | | size | Diameter of the circle. | 40 | | endAngle | Determines the endAngle of the circle. A number between 0 and 1. The final endAngle would be the number multiplied by 2π | 0.9 | | thickness | Thickness of the inner circle. | 3 | | showsText | Whether or not to show a text representation of current progress. | false | | formatText(progress) | A function returning a string to be displayed for the textual representation. | See source | | textStyle | Styles for progress text, defaults to a same color as circle and fontSize proportional to size prop. | None | | allowFontScaling | Whether or not to respect device font scale setting. | true | | direction | Direction of the circle clockwise or counter-clockwise. | clockwise | | strokeCap | Stroke Cap style for the circle butt, square or round. | butt | | fill | Fill color of the inner circle. | None (transparent) |

Progress.Pie

All of the props under Properties in addition to the following:
| Prop | Description | Default | | ---------- | -------------------- | ------- | | size | Diameter of the pie. | 40 |

Progress.CircleSnail

| Prop | Description | Default | | ---------------------- | --------------------------------------------------------------- | ---------------------- | | animating | If the circle should animate. | true | | hidesWhenStopped | If the circle should be removed when not animating. | false | | size | Diameter of the circle. | 40 | | color | Color of the circle, use an array of colors for rainbow effect. | rgba(0, 122, 255, 1) | | thickness | Thickness of the circle. | 3 | | duration | Duration of animation. | 1000 | | spinDuration | Duration of spin (orbit) animation. | 5000 | | strokeCap | Stroke Cap style for the circle butt, square or round. | round |

Examples

Changelog

Thanks

To Mandarin Drummond for giving me the NPM name.

License

MIT License. © Joel Arvidsson 2015-