A lightweight iOS control that animates segmented progress bars like Snapchat or Instagram Stories.
SegmentedProgressBar is an open-source iOS UI control that creates animated segmented progress bars similar to those used in Snapchat and Instagram Stories. It allows developers to add multi-segment progress indicators with smooth animations, playback controls, and customizable styling to their iOS applications. The control solves the need for a ready-to-use, visually consistent progress indicator for story-based interfaces.
iOS developers building apps with story or multi-step progress interfaces, particularly those needing Snapchat/Instagram-like progress indicators. It's ideal for mobile developers working on social media, content viewing, or tutorial flow applications.
Developers choose SegmentedProgressBar because it's a lightweight, single-file solution with zero dependencies that replicates a polished, familiar UI pattern. It offers greater control and customization compared to building custom progress animations from scratch, saving development time while maintaining iOS-native performance.
Snapchat / Instagram Stories like progress indicator
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses a single Swift file with no external dependencies, allowing quick drop-in addition to any iOS project, as highlighted in the README installation instructions.
Offers easy adjustment of colors, padding, and segment count through properties like topColor and bottomColor, demonstrated in the styling code examples.
Supports pausing, resuming, skipping, and rewinding animations via methods like isPaused, skip(), and rewind(), enabling interactive progress management.
Provides delegate methods to track segment index changes and animation completion, facilitating custom logic integration without modifying the core control.
Marked for Swift 3.0 and iOS 8+, which may cause compatibility issues with newer Swift versions or require migration efforts in modern Xcode projects.
The README lacks in-depth guides, advanced usage examples, or troubleshooting tips, making complex customizations or debugging more challenging.
As a UIKit-based control, it doesn't integrate seamlessly with SwiftUI, requiring additional bridging code for apps built with Apple's newer UI framework.