A Swift network library built on Moya with RxSwift support and a plugin-based architecture for reactive and declarative networking.
Booming (and RxNetworks) is a Swift networking library that provides a structured, plugin-based architecture for handling API requests in Apple ecosystem apps. It solves the complexity of network layer management by offering a declarative approach built on Moya, with optional reactive extensions via RxSwift. The library simplifies tasks like serialization, caching, authentication, and loading states through a modular plugin system.
iOS, macOS, and watchOS developers building Swift applications who need a robust, maintainable networking layer with support for reactive programming or plugin-based customization.
Developers choose Booming for its deep integration with Moya and RxSwift, extensive plugin ecosystem, and flexibility in serialization (HandyJSON/Codable). It reduces boilerplate while enabling advanced features like automatic token refresh, request sharing, and animated loading indicators out of the box.
🧚 MVP Network Api library. 插件版网络基础架构,支持响应式。
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly combines RxSwift with Moya for declarative, observable-based API calls, as demonstrated in the RxSwift usage examples for data binding and error handling.
Offers 18+ pre-built plugins for caching, loading indicators, authentication, and file transfers, reducing boilerplate code—examples include NetworkCachePlugin and NetworkLoadingPlugin.
Supports both HandyJSON and Codable via HollowCodable, allowing developers to choose parsing methods, with extensions for easy deserialization in reactive flows.
Includes features like automatic token refresh with NetworkTokenPlugin, shared requests to prevent duplicates, and default plugin configuration via BoomingSetup.basePlugins.
The README explicitly warns against using HandyJSON due to stopped maintenance, which can lead to compatibility issues and security risks over time.
Requires integrating multiple dependencies (Moya, RxSwift, separate plugins) and understanding their interactions, making it heavier than simpler alternatives like plain Alamofire.
While a demo is provided, the README contains broken English and sparse explanations, which may hinder onboarding and troubleshooting for non-Chinese speakers.