A Swift framework for creating Auto Layout constraints programmatically with a lightweight, expressive API.
EasyPeasy is a Swift framework that simplifies programmatic Auto Layout for iOS, tvOS, and macOS development. It replaces verbose NSLayoutConstraint code with a concise domain-specific language, automatically handles constraint conflicts, and supports conditional constraints based on device traits or app state.
iOS, tvOS, and macOS developers who prefer programmatic UI over Interface Builder and want a cleaner, more maintainable way to manage Auto Layout constraints in Swift.
Developers choose EasyPeasy for its minimal boilerplate, automatic conflict resolution, and expressive syntax that makes Auto Layout feel intuitive, reducing debugging time and improving code readability compared to raw NSLayoutConstraint APIs.
Auto Layout made easy
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Offers a lightweight domain-specific language that replaces verbose NSLayoutConstraint code, as shown with examples like Width(200) and Top(10).to(headerView).
Handles most Auto Layout conflicts internally, enabling easy constraint updates without manual reference management or reinstallation.
Allows constraints to be applied based on device traits or custom logic using when closures, ideal for adaptive layouts across orientations and size classes.
Provides consistent APIs for iOS, tvOS, and macOS, supporting a wide range of Apple development projects with one codebase.
Several promised guides on advanced topics like priorities and layout guides are marked 'coming soon', leaving gaps for developers seeking deeper insights.
Requires matching specific framework versions to Swift compiler versions (e.g., v1.9.0 for Swift 5), complicating maintenance and upgrades.
Purely programmatic with no support for Interface Builder or SwiftUI, making it unsuitable for teams relying on visual design tools.