Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. SwiftyButton

SwiftyButton

MITSwift0.8.2

A simple and customizable button library for iOS/macOS apps with flat and pressable button styles.

GitHubGitHub
548 stars44 forks0 contributors

What is SwiftyButton?

SwiftyButton is a Swift library that provides customizable button components for iOS and macOS applications. It solves the problem of creating visually appealing buttons with consistent styling by offering two main button types—FlatButton and PressableButton—with extensive customization options for colors, shadows, and corner radii.

Target Audience

iOS and macOS developers building native applications who need customizable, visually consistent button components that work with both code and Interface Builder.

Value Proposition

Developers choose SwiftyButton for its simplicity, extensive customization options, and seamless integration with Interface Builder. It provides ready-to-use button styles with 3D press effects and global defaults configuration, reducing the need for custom button implementations.

Overview

Simple and customizable button in Swift

Use Cases

Best For

  • Creating consistent button designs across iOS/macOS apps
  • Implementing 3D pressable button effects with shadow layers
  • Rapid prototyping of button interfaces in Interface Builder
  • Building apps with customizable button states (normal, highlighted, selected, disabled)
  • Adding animated custom content within buttons
  • Setting global button defaults across an entire application

Not Ideal For

  • Projects requiring semi-transparent or gradient button colors, as PressableButton only supports plain colors without alpha
  • Apps needing fine-grained control over title and image insets, since SwiftyButton automatically overrides user-specified top and bottom values
  • Teams looking for a comprehensive UI component library beyond buttons, as it focuses solely on button implementations
  • Cross-platform development targeting watchOS or tvOS, since it's limited to iOS and macOS

Pros & Cons

Pros

Interface Builder Integration

Works directly in Storyboard/XIB files by changing the button class, enabling visual design without code and reducing development time.

Extensive State Customization

Supports multiple button states (normal, highlighted, selected, disabled) with separate color properties, ensuring consistent visual feedback.

Global Defaults Configuration

Allows setting defaults for all button instances via FlatButton.Defaults or PressableButton.Defaults structures, promoting design consistency across apps.

3D Press Effects

PressableButton provides a realistic press animation with shadow layers and depth control, adding polish without custom animation code.

Cons

Color Transparency Limitation

PressableButton only works with plain colors and does not support alpha/transparency, restricting design flexibility for modern UI effects.

Automatic Inset Override

User-specified top and bottom insets for titles and images are overridden, limiting precise control over button content layout.

Narrow Component Scope

Only provides button components, requiring integration with other libraries for a full UI toolkit, which can increase project complexity.

Frequently Asked Questions

Quick Stats

Stars548
Forks44
Contributors0
Open Issues7
Last commit5 years ago
CreatedSince 2015

Tags

#uibutton#ios#button#custom-ui#ui-components#interface-builder#cocoapods#swift#carthage#macos#mobile#uikit

Built With

S
Swift

Included in

iOS51.7k
Auto-fetched 10 hours ago

Related Projects

LiquidFloatingActionButtonLiquidFloatingActionButton

Material Design Floating Action Button in liquid state

Stars3,840
Forks460
Last commit4 years ago
DOFavoriteButtonDOFavoriteButton

Cute Animated Button written in Swift.

Stars3,584
Forks289
Last commit4 years ago
VBFPopFlatButtonVBFPopFlatButton

Flat button with 9 different states using POP

Stars3,062
Forks285
Last commit2 years ago
BEMCheckBoxBEMCheckBox

Tasteful Checkbox for iOS. (Check box)

Stars2,608
Forks290
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub