A Swift library for creating animated flat buttons with built-in symbols and custom style support.
DynamicButton is a Swift library for creating animated flat buttons with built-in symbols and custom style support. It solves the problem of implementing interactive buttons with smooth animations—like hamburger menus that transform into close buttons—without requiring custom drawing code. The library provides a collection of pre-designed symbols and an extensible API for creating custom button styles.
iOS and tvOS developers building applications with custom UI controls, particularly those needing animated navigation buttons, media controls, or interactive symbols. It's ideal for developers who want polished button animations without implementing Core Graphics drawing manually.
Developers choose DynamicButton for its ready-to-use animated symbols, smooth transitions, and easy customization. Unlike basic UIButton implementations, it provides a declarative API for button styles with built-in animations and extensibility for custom symbols.
Yet another animated flat buttons in Swift
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides built-in animations for switching between styles like hamburger to close, eliminating the need for manual Core Animation code.
Includes 25+ pre-built symbols such as arrows, play/pause, and download, covering common UI needs without custom drawing.
Supports custom styles via the DynamicButtonBuildableStyle protocol, allowing developers to create unique buttons tailored to specific designs.
Properties like lineWidth and strokeColor can be adjusted directly, enabling precise styling to match app themes.
All button styles are inherently flat, which may not suit projects requiring textured, dimensional, or heavily styled buttons.
Implementing custom symbols requires Core Graphics knowledge and is restricted to a maximum of four paths, adding development overhead.
Only supports iOS and tvOS, excluding other Apple platforms like macOS and watchOS, limiting cross-platform use.