Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ohkanghoon/rxapolloclient

RxSwift extensions for Apollo Client
https://github.com/ohkanghoon/rxapolloclient

apollo apollo-client apollo-ios ios rxswift rxswift-extensions swift

Last synced: about 1 month ago
JSON representation

RxSwift extensions for Apollo Client

Awesome Lists containing this project

README

        

# RxApolloClient

![Swift](https://img.shields.io/badge/Swift-5.5-orange.svg)
[![Build Status](https://github.com/OhKanghoon/RxApolloClient/workflows/CI/badge.svg)](https://github.com/OhKanghoon/RxApolloClient/actions)
[![Version](https://img.shields.io/cocoapods/v/RxApolloClient.svg?style=flat)](https://cocoapods.org/pods/RxApolloClient)
[![License](https://img.shields.io/cocoapods/l/RxApolloClient.svg?style=flat)](https://cocoapods.org/pods/RxApolloClient)
[![Platform](https://img.shields.io/cocoapods/p/RxApolloClient.svg?style=flat)](https://cocoapods.org/pods/RxApolloClient)

## Dependencies
- [RxSwift](https://github.com/ReactiveX/RxSwift) (~> 6.0)
- [apollo-ios](https://github.com/apollographql/apollo-ios) (~> 0.50.0)

## Requirements

- Xcode 13.2.1
- Swift 5.5.2

## Installation

- Using [CocoaPods](https://cocoapods.org)
```ruby
pod 'RxApolloClient', '1.6.0'
```
- Using [Swift Package Manager]
```swift
import PackageDescription

let package = Package(
name: "YourApp",
dependencies: [
.package(url: "https://github.com/OhKanghoon/RxApolloClient", from: "1.6.0")
]
)
```

## Usage
#### Fetch
```swift
client.rx
.fetch(query:)
```
#### Watch
```swift
client.rx
.watch(query:)
```
#### Mutate
```swift
client.rx
.perform(mutation:)
```

#### Upload
```swift
client.rx
.upload(operation:, files:)
```

### Subscribe
```swift
client.rx
.subscribe(subscription:)
```

## Example

- [Github Search](https://github.com/OhKanghoon/RxApolloClient/tree/master/Example)

## Author

OhKanghoon, [email protected]

## License

RxApolloClient is available under the MIT license. See the LICENSE file for more info.