All Projects → vadymmarkov → Retroprogress

vadymmarkov / Retroprogress

Licence: other
💈 Retro looking progress bar straight from the 90s

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Retroprogress

Distributed
Stars: ✭ 913 (+1185.92%)
Mutual labels:  retro
Progress Activity
Easily add loading, empty and error states in your app.
Stars: ✭ 1,039 (+1363.38%)
Mutual labels:  progress-bar
Toothyprogress
A polyline determinated ProgressBar written in Kotlin
Stars: ✭ 56 (-21.13%)
Mutual labels:  progress-bar
Recyclomedia
Recyclomedia is a digital platform that aims to save the planet from pollution which is the major threat to the functioning of earth.
Stars: ✭ 32 (-54.93%)
Mutual labels:  retro
Bashful
Use a yaml file to stitch together commands and bash snippits and run them with a bit of style. Why? Because your bash script should be quiet and shy-like (...and not such a loud mouth).
Stars: ✭ 1,018 (+1333.8%)
Mutual labels:  progress-bar
Missme
Same Old Android Progress Dialog
Stars: ✭ 49 (-30.99%)
Mutual labels:  progress-bar
Pbmcapply
Tracking the progress of mc*apply with progress bar.
Stars: ✭ 25 (-64.79%)
Mutual labels:  progress-bar
Mkringprogressview
⭕️ Ring progress view similar to Activity app on Apple Watch
Stars: ✭ 1,140 (+1505.63%)
Mutual labels:  progress-bar
Gbz overlay
Gameboy Zero status icon overlay display
Stars: ✭ 46 (-35.21%)
Mutual labels:  retro
Chocolate Doom
Chocolate Doom is a Doom source port that is minimalist and historically accurate.
Stars: ✭ 1,052 (+1381.69%)
Mutual labels:  retro
Langterm
🕹️ WebGL-based VT220 emulator, made as a learning example and frontend for a text adventure
Stars: ✭ 35 (-50.7%)
Mutual labels:  retro
Ng Bootstrap
Angular powered Bootstrap
Stars: ✭ 7,872 (+10987.32%)
Mutual labels:  progress-bar
Android Spinkit
Android loading animations
Stars: ✭ 8,096 (+11302.82%)
Mutual labels:  progress-bar
Teleball
Build your own Arduino based retro handheld game console
Stars: ✭ 21 (-70.42%)
Mutual labels:  retro
Electron Progressbar
electron-progressbar provides an easy-to-use and highly customizable API to show and control progress bars on Electron applications.
Stars: ✭ 58 (-18.31%)
Mutual labels:  progress-bar
Flutterplayground
Playground app for Flutter
Stars: ✭ 859 (+1109.86%)
Mutual labels:  progress-bar
Rbtris
Tetris game powered by Ruby2D
Stars: ✭ 48 (-32.39%)
Mutual labels:  retro
Roundedprogressbar
A customizable, animated progress bar that features rounded corners. This Android library is designed to look great and be simple to use 🎉
Stars: ✭ 70 (-1.41%)
Mutual labels:  progress-bar
Bytepath
A replayable arcade shooter with a focus on build theorycrafting made using Lua and LÖVE.
Stars: ✭ 1,119 (+1476.06%)
Mutual labels:  retro
Tqdj
A progress bar that plays lofi music
Stars: ✭ 51 (-28.17%)
Mutual labels:  progress-bar

RetroProgress

CI Status Version Carthage Compatible License Platform Swift

Description

Do you miss the 90s? We know you do. Dial-up internet, flickering screens, brightly colored websites and, of course, this annoyingly slow progress bar that has been invented to test your patience. Yes, it was a while ago, but we don't want it to be forgotten. Meet RetroProgress, a progress bar made to cure your 90s nostalgia.

  • [x] Easy to use and customizable progress bar.
  • [x] Support for both progress value (0...1) and number of steps.
  • [x] Progress animations.
  • [x] No external dependencies.
  • [x] Playgrounds.
  • [x] Demo project.

Table of Contents

RetroProgress Icon

Usage

Are you excited to bring this thing back from the dead? So are we. Let's use default configuration and see what we get out-of-the-box:

let progressView = ProgressView(frame: CGRect(x: 0, y: 0, width: 360, height: 30))
progressView.animateProgress(to: 0.8)
RetroProgress

Do you think it's way too retro? Let's try to make it more modern:

let progressView = ProgressView(frame: CGRect(x: 0, y: 0, width: 360, height: 30))

// Configure
progressView.layer.cornerRadius = 10
progressView.layer.borderColor = UIColor.black.cgColor
progressView.trackColor = .white
progressView.separatorColor = .black
progressView.progressColor = UIColor(
  red: 218/255,
  green: 236/255,
  blue: 255/255,
  alpha: 1
)

// Set progress
progressView.animateProgress(to: 0.8)
RetroProgress

Not a fan of those separators? Let's try without them:

let progressView = ProgressView(frame: CGRect(x: 0, y: 0, width: 360, height: 30))

// Configure
progressView.numberOfSteps = 0
progressView.progressInset = .zero
progressView.layer.cornerRadius = 15
progressView.layer.borderColor = UIColor.white.cgColor
progressView.trackColor = .black
progressView.progressColor = .white

// Set progress
progressView.animateProgress(to: 0.8)
RetroProgress

The options are limitless. Think big, now it's your turn to make the progress bar great again.

Public properties

  • numberOfSteps - Maximum number of steps. Set to 0 to remove separators.
  • step - Number of separators (0...numberOfSteps). Values outside are pinned.
  • progress - 0...1, default is 0. Values outside are pinned.
  • progressInset - The inner inset for progress bar and separators.
  • trackColor - The color shown for the portion of the progress bar that is not filled.
  • progressColor - The color shown for the portion of the progress bar that is filled.
  • separatorColor - The color used for the step separators.
  • fullProgressAnimationDuration - The duration for progress animation from 0 to 1.
  • separatorWidth - The width of step separators.

Public methods

  • animateProgress(to:duration:) - Animates progress bar to the specified value (0...1).
  • animateSteps(to:duration:) - Animates progress bar to the specified value (0...numberOfSteps).

Installation

RetroProgress is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'RetroProgress'

RetroProgress is also available through Carthage. To install just write into your Cartfile:

github "vadymmarkov/RetroProgress"

RetroProgress can also be installed manually. Just download and drop Sources folders in your project.

Author

Vadym Markov, [email protected]

Credits

This library was originally done at Hyper, a digital communications agency with a passion for good code and delightful user experiences.

Contributing

Check the CONTRIBUTING file for more info.

License

RetroProgress is available under the MIT license. See the LICENSE file for more info.

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].