A declarative, extensible Swift library for simplifying Auto Layout with a fluent builder syntax.
EasyAnchor is a Swift library that simplifies Auto Layout with a declarative, fluent API. It reduces boilerplate code by providing intuitive methods for creating, updating, and managing constraints programmatically on iOS and macOS. The library helps developers build dynamic UIs faster while maintaining readability and extensibility.
iOS and macOS developers who build UIs programmatically using Auto Layout and prefer a concise, Swift-native syntax over verbose NSLayoutConstraint code.
Developers choose EasyAnchor for its minimal learning curve, close alignment with native Auto Layout APIs, and powerful features like constraint inference, grouping, and retrieval—all without introducing heavy abstractions.
⚓️ Declarative, extensible, powerful Auto Layout
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a chainable, readable API that drastically reduces Auto Layout boilerplate, as shown in examples like `a.anchor.top.left` for concise constraint definitions.
Automatically infers common relationships, such as anchoring to the superview, cutting down on verbose code without sacrificing clarity.
Supports grouping constraints for easy activation, deactivation, and updates, which is ideal for animations or adaptive layouts across screen sizes.
Allows custom layout logic through the ConstraintProducer protocol, enabling developers to build reusable builders beyond the built-in helpers.
Lacks built-in visualization or debugging features for constraints, as noted in the README's todo list, forcing reliance on native Auto Layout debugging.
Introduces a third-party library that may not be justified for simple projects or teams preferring to stick with pure Apple APIs to avoid updates and compatibility issues.
Does not support SwiftUI or cross-platform frameworks, restricting its use to iOS and macOS projects without modern declarative UI options.