https://github.com/sabapathy7/networkkit
Powerful network layer seamlessly integrating Combine Framework, Async/Await, and Closures.
https://github.com/sabapathy7/networkkit
apple async-await closure combine ios network package swift swift-package-manager
Last synced: 3 months ago
JSON representation
Powerful network layer seamlessly integrating Combine Framework, Async/Await, and Closures.
- Host: GitHub
- URL: https://github.com/sabapathy7/networkkit
- Owner: sabapathy7
- License: mit
- Created: 2024-01-01T14:59:31.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-10-29T21:59:05.000Z (7 months ago)
- Last Synced: 2025-12-13T00:54:07.823Z (6 months ago)
- Topics: apple, async-await, closure, combine, ios, network, package, swift, swift-package-manager
- Language: Swift
- Homepage:
- Size: 295 KB
- Stars: 15
- Watchers: 1
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## NetworkKit
Elevate your iOS app’s connectivity with NetworkKit – a powerful, modular network layer designed to seamlessly integrate the latest in Swift’s networking capabilities, including Combine Framework, Async/Await, and Closures.
### 📖 Full Tutorial
Dive deep into NetworkKit with the [full tutorial on Medium.](https://sabapathy7.medium.com/how-to-create-a-network-layer-for-your-ios-app-623f99161677)
### 🚀 Example Usage
Check out how to use NetworkKit in real-world applications:
• [iOS Network Example](https://github.com/sabapathyk7/iOSNetworkExample)
• [SOLID Principles Example](https://github.com/sabapathyk7/SOLIDPrinciplesExample)
• [Force Update App Example](https://github.com/sabapathyk7/ForceUpdateExample)
### ✨ Features
**• Combine Framework Integration**
Leverage the power of Combine to streamline asynchronous operations and handle complex data flows effortlessly.
**• Async/Await Support**
Embrace modern Swift programming with async/await, simplifying asynchronous code and making your networking logic cleaner and more readable.
**• Closures for Flexibility**
Customize your networking calls with closures, offering a flexible and modular approach to handle responses, errors, and more.
### 📚 Code Examples
public protocol Networkable {
func sendRequest(endpoint: EndPoint) async throws -> T
func sendRequest(endpoint: EndPoint, resultHandler: @escaping (Result) -> Void)
func sendRequest(endpoint: EndPoint, type: T.Type) -> AnyPublisher
}
### 🛠️ Installation
Add NetworkKit to your project using Swift Package Manager:
https://github.com/sabapathyk7/NetworkKit.git
### 🤝 Contributions
Have ideas or improvements? Feel free to submit issues or pull requests to help enhance NetworkKit.
### 🔗 Connect with Me
Stay updated on the latest features and releases by following me on [LinkedIn](https://www.linkedin.com/in/sabapathy7/).