SnapKit
FlexLayout
SnapKit | FlexLayout | |
---|---|---|
12 | 1 | |
20,079 | 2,035 | |
0.2% | 0.4% | |
4.9 | 8.0 | |
7 months ago | 3 months ago | |
Swift | Swift | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
SnapKit
-
FixFlex alternatives - Stevia and SnapKit
3 projects | 12 Jan 2024
-
Storyboard vs Programmatic UI
I’ve been using Xcode for the last 13 years or so, and my advice is - us whatever is comfortable and makes sense to you. I use all 3: code*, storyboard and interface builder (xib). They all have their strengths and weaknesses. Storyboards are nice for quick simple screens with table/collection views and cell templates, but sucks when working in a team (merge conflicts on xml files is not fun). Interface builder has the advantage of being really quick for standalone viewcontrollers and views (after some code that takes away the boilerplate part of loading views from nibs) and minimized the git issues. And code is fun when you’re using anchors and frameworks like snapkit (https://github.com/SnapKit/SnapKit) but even when I was doing visual constrains using strings it was fine. Anyway, just try to learn a bit of everything and see what resonates with you. There are no right answers, just preferences.
-
I’ve never thought about what it actually does
If you need to use Auto Layout, I recommend using a wrapper SDK like SnapKit https://github.com/SnapKit/SnapKit that is less verbose and less error-prone and assigns translatesAutoResizingMaskIntoConstraints and isActive automatically.
-
why is UIKit much harder than SwiftUI?
With a library like SnapKit, you can still have the terse, declarative coding style of UIKit. Hell, I once wrote my own poor-man's version of SnapKit on a whim because writing out constraint code manually got tedious.
-
📌 Pin — a tiny library that makes working with AutoLayout easier
SnapKit (19k⭐️) has been providing almost the same thing for years. It is already a standard for many companies.
-
What can be done with UIKit that can't be done with SwiftUI?
With something like SnapKit (I actually rolled my own poor man's version in like 10 minutes, before learning that SnapKit existed), SwiftUI no longer appeals to me because of it's declarative-style DSL.
-
Cracking the iOS Interview
SnapKit - Autolayout DSL for iOS & OS X
-
When looking for SwiftUI information, can I learn by looking at the equivalant UIKit solution, or are they too different?
This. And if you want to learn AutoLayout without the verbosity/complexity of Apple's own APIs, I would look into using SnapKit.
-
Awesome macOS Libraries List
SnapKit - A Swift Autolayout DSL. Language: Swift.
- What are some good UI libraries for UIKit/Appkit?
FlexLayout
-
Building Reddit’s Design System on iOS
We still wanted to leverage a layout engine that could be performant and easy-to-use. After doing some performance testing with native UIKit, Autolayout, and a few other third-party options, we ended up bringing FlexLayout into the mix, which is a Swift implementation of Facebook’s Yoga layout engine. All RPL components utilize FlexLayout in order to lay out content fast and efficiently. While we’ve enjoyed using it, we’ve found a few touch points to be mindful of. There are some rough edges we’ve found, such as utilizing stack views with subviews that use FlexLayout, that often come at odds with both UIKit and FlexLayout’s layout engines.
What are some alternatives?
Cartography - A declarative Auto Layout DSL for Swift :iphone::triangular_ruler:
PinLayout - Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable. [iOS/macOS/tvOS/CALayer]
LayoutKit - LayoutKit is a fast view layout library for iOS, macOS, and tvOS.
TinyConstraints - Nothing but sugar.
Cassowary - A Swift port of the Cassowary linear constraint solver
Stevia - :leaves: Concise Autolayout code
SwiftBox - Flexbox in Swift, using Facebook's css-layout.
Masonry - Harness the power of AutoLayout NSLayoutConstraints with a simplified, chainable and expressive syntax. Supports iOS and OSX Auto Layout
SwiftAutoLayout - Tiny Swift DSL for Autolayout
PureLayout - The ultimate API for iOS & OS X Auto Layout — impressively simple, immensely powerful. Objective-C and Swift compatible.