Develop iOS apps faster 
with custom UI components

Beautiful UI elements for SwiftUI and UIKit.

Try in App
Componets example

Don't waste time 
styling basic elements

ComponentsKit offers beautifully designed, animatable components that are ready to use immediately.

Componets example

+ many other components coming soon

Write code with your 
preferred framework 

ComponentsKit is fully compatible with both UIKit and SwiftUI.

final class PageViewController: UIViewController {
  private let emailInputVM = InputFieldVM {
    $0.title = "Email"
    $0.isRequired = true
  }
  private let checkboxVM = CheckboxVM {
    $0.title = "I agree to receive marketing emails"
  }
  private let buttonVM = ButtonVM {
    $0.title = "Continue"
    $0.isFullWidth = true
  }
  
  private lazy var emailInput = UKInputField(
    model: self.emailInputVM
  )
  private lazy var consentCheckbox = UKCheckbox(
    model: self.checkboxVM
  )
  private lazy var continueButton = UKButton(
    model: self.buttonVM
  )
  
  override func viewDidLoad() {
    super.viewDidLoad()
    
    self.view.addSubview(self.emailInput)
    self.view.addSubview(self.continueButton)
    self.view.addSubview(self.continueButton)
    
    self.layout()
  }
  
  private func layout() { ... }
}
Example of customization

Easily customize 
your app's appearance

The library offers a wide range of configuration options for components and app themes.

Example of customization
// Setup apperance of the components
let model = ButtonVM {
  $0.title = "Order now"
  $0.color = .accent
  $0.font = .system(size: 22, weight: .semibold)
  $0.cornerRadius = .full
}

// Control global style
ComponentsKitConfig.shared.colors.update {
  // Base colors
  $0.background = .themed(
    light: .hex("#F1F7FA"),
    dark: .hex("#003955")
  )

  // Component colors
  $0.accent = .init(
    main: .themed(
      light: .hex("#3684F8"),
      dark: .hex("#0058DB")
    ),
    contrast: .universal(.hex("#FFFFFF"))
  )
}

PRICING

Get lifetime access

Unlock all components and future updates with a single purchase.

Pay once, use forever

$49

  • Access to all components
  • Unlimited projects
  • Lifetime access
  • Free updates
Get ComponentsKit

Frequently Asked Questions

Have another question? Contact us at support@componentskit.io