SnapKit is a DSL to make Auto Layout easy on both iOS and OS X.
⚠️ To use with Swift 5.x please ensure you are using >= 5.0.0 ⚠️
Contents
Requirements
- iOS 14.0+ / macOS 12.0+ / tvOS 14.0+
- Xcode 26.0+
- Swift 6.0+ (Toolchain, not syntax)
Communication
- If you need help, use Stack Overflow. (Tag 'snapkit')
- If you'd like to ask a general question, use Stack Overflow.
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
Installation
Swift Package Manager
Swift Package Manager is a tool for managing the distribution of Swift code. It’s integrated with the Swift build system to automate the process of downloading, compiling, and linking dependencies.
Xcode 26+ is required to build SnapKit using Swift Package Manager.
To integrate SnapKit into your Xcode project using Swift Package Manager, add it to the dependencies value of your Package.swift:
dependencies: [
.package(url: "https://github.com/SnapKit/SnapKit.git", .upToNextMajor(from: "6.0.0"))
]
Manually
If you prefer not to use either of the aforementioned dependency managers, you can integrate SnapKit into your project manually.
Usage
Quick Start
import SnapKit
class MyViewController: UIViewController {
lazy var box = UIView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.addSubview(box)
box.backgroundColor = .green
box.snp.makeConstraints { (make) -> Void in
make.width.height.equalTo(50)
make.center.equalTo(self.view)
}
}
}
Resources
Credits
- Robert Payne (@robertjpayne)
- Many other contributors
License
SnapKit is released under the MIT license. See LICENSE for details.