Go to file
Alex Türk 4d52cc3768
Compile for visionOS (#777)
2023-10-05 02:30:31 +13:00
CodeSnippets Update code snippets 2016-12-26 00:25:57 +13:00
Documentation Added quirks section to migration guide 2016-12-26 01:05:48 +13:00
Example-iOS Compile for visionOS (#777) 2023-10-05 02:30:31 +13:00
SnapKit.xcodeproj add libswiftCoreGraphics.dylib (#762) 2022-11-01 16:17:23 +13:00
SnapKit.xcworkspace Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
SnapKitPlayground.playground Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
Sources Compile for visionOS (#777) 2023-10-05 02:30:31 +13:00
Supporting Files Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
Tests/SnapKitTests Compile for visionOS (#777) 2023-10-05 02:30:31 +13:00
.gitignore Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
.travis.yml Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
CONTRIBUTING.md Update CONTRIBUTING.md 2016-09-20 16:23:17 +12:00
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md 2016-09-22 22:21:36 +12:00
LICENSE Snap is now SnapKit 2015-04-15 23:07:50 +12:00
Package.swift Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
README.md Feature/release 5.6 (#746) 2022-04-13 16:06:06 +12:00
SnapKit.podspec fix for Xcode 14 : dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib Reason: image not found (#763) 2022-11-01 16:16:22 +13:00

README.md

SnapKit is a DSL to make Auto Layout easy on both iOS and OS X.

Build Status Platform Cocoapods Compatible Carthage compatible

⚠️ To use with Swift 4.x please ensure you are using >= 4.0.0 ⚠️

⚠️ To use with Swift 5.x please ensure you are using >= 5.0.0 ⚠️

Contents

Requirements

  • iOS 10.0+ / Mac OS X 10.12+ / tvOS 10.0+
  • Xcode 10.0+
  • Swift 4.0+

Migration Guides

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

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

CocoaPods 1.1.0+ is required to build SnapKit 4.0.0+.

To integrate SnapKit into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'SnapKit', '~> 5.6.0'
end

Then, run the following command:

$ pod install

Carthage

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate SnapKit into your Xcode project using Carthage, specify it in your Cartfile:

github "SnapKit/SnapKit" ~> 5.0.0

Run carthage update to build the framework and drag the built SnapKit.framework into your Xcode project.

Swift Package Manager

Swift Package Manager is a tool for managing the distribution of Swift code. Its integrated with the Swift build system to automate the process of downloading, compiling, and linking dependencies.

Xcode 11+ 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: "5.0.1"))
]

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)
        }
    }

}

Playground

You can try SnapKit in Playground.

Note:

To try SnapKit in playground, open SnapKit.xcworkspace and build SnapKit.framework for any simulator first.

Resources

Credits

License

SnapKit is released under the MIT license. See LICENSE for details.