A comprehensive collection of Swift extensions and utilities for iOS, macOS, tvOS, watchOS, and Linux development.
ReerKit is a native Swift framework that provides a wide array of extensions, syntactic sugar, and performance improvements for system types, UIKit, and Cocoa classes across Apple platforms and Linux. It enhances development productivity by offering convenient methods and utilities that simplify common tasks while maintaining type safety and avoiding naming conflicts.
Swift developers building applications for iOS, macOS, tvOS, watchOS, visionOS, or Linux who want to extend native types and frameworks with safe, convenient utilities. It's particularly useful for developers who frequently work with data structures, concurrency, property wrappers, and UI enhancements.
Developers choose ReerKit because it provides a comprehensive, non-intrusive toolkit that follows Swift conventions, uses a unique 're' infix to prevent naming conflicts, and offers a pragmatic collection of extensions and utilities that are not available in the standard library, such as weak reference containers, lock encapsulations, and dynamic member lookup for dictionaries.
Swift 基础库. A collection of Swift extensions and utilities.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
All extensions use the 're' infix (e.g., '123'.re.md5String) to prevent naming conflicts with existing methods, ensuring clarity and safety as highlighted in the README examples.
Includes implementations like BinaryTree, OrderedSet, and OrderedDictionary, which are not in Swift's standard library, providing ready-to-use solutions for complex data handling.
Offers MutexLock, ReadWriteLock, and other encapsulations for thread-safe operations, simplifying concurrency management without boilerplate code.
Supports Apple platforms (iOS 12.0+, macOS 10.13+) and Linux (Ubuntu 14.04+), making it versatile for both client and server-side Swift development.
The README explicitly states Swift Package Manager does not support building for iOS/tvOS/macOS/watchOS applications, which is a significant limitation for modern Swift projects using SPM.
The mandatory 're' infix on all extensions can make code more verbose and less idiomatic compared to standard Swift patterns, potentially hindering readability.
Documentation is primarily via DocC or a downloadable archive, with a Chinese version available, which may pose language barriers or lack real-time updates compared to online, searchable docs.