apollo-ios
Swinject
apollo-ios | Swinject | |
---|---|---|
6 | 6 | |
3,836 | 6,190 | |
0.6% | 0.6% | |
9.0 | 7.2 | |
11 days ago | 6 days ago | |
Swift | Swift | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
apollo-ios
-
Migrating Netflix to GraphQL Safely
GraphQL queries are just HTTP POST queries with a JSON body. They're supported everywhere.
If you want specialized tooling for them, Kotlin and Swift both have great strongly-typed GraphQL libraries.
Apollo publishes libraries for both:
- https://www.apollographql.com/docs/kotlin/
- https://www.apollographql.com/docs/ios/
- GraphQL making its way into a Twitter discussion about latency is not what I expected
-
Awesome macOS Libraries List
apollo-ios - A strongly-typed, caching GraphQL client. Language: Swift.
-
Apollo iOS 1.0 RFC - Swift Codegen
RFC: apollo-ios/CodegenProposal.md at release/1.0-alpha-incubating · apollographql/apollo-ios · GitHub Example Generated Output: apollo-ios/Tests/ApolloCodegenTests/AnimalKingdomAPI/ExpectedGeneratedOutput at release/1.0-alpha-incubating · apollographql/apollo-ios · GitHub PR for discussion is here: [RFC] In Progress - Release 1.0 - Swift Codegen by calvincestari · Pull Request #1876 · apollographql/apollo-ios · GitHub
-
SwiftGraphQL - A GraphQL client for Swift lovers.
Apollo iOS, on the other hand, generates Swift types from queries in our "queries.graphql" files and supports caching out of the box. Generating types from the SDL is not per se a problem, but it becomes cumbersome and error-prone with large nested queries. Apollo iOS also strongly-binds the generated structures to your queries, making it almost impossible to translate fetched data into an internal state.
-
GraphQL - Diving Deep
Apollo Client does have a good integration with these frameworks including React, iOS and Android — so, you might want to check that out
Swinject
-
Dependency Injection Simplified
DI is a concept which makes a class independent of its dependency management. It achieves that by decoupling the usage of an object from its creation. This helps you to follow SOLID’s dependency inversion and single responsibility principles. To achieve this in Swift one of the most appreciated library is Swinject. This library not only provides DI but also have many other features like:-
-
Awesome macOS Libraries List
Swinject - Dependency injection framework for Swift. Language: Swift.
-
SwiftUI Dependency injection
We use Swinject which is probably quite similar https://github.com/Swinject/Swinject
- Any DI libraries for swift?
- How do you guys see PHP and its framworks/CMS in 2025?
-
How to modularize a big iOS project
So, how do we fix this? There is a cleaner solution. By using a dependency injection framework, such as Swinject we can create a base module that we might call the DI module.
What are some alternatives?
Alamofire - Elegant HTTP Networking in Swift
Resolver - Swift Ultralight Dependency Injection / Service Locator framework
Moya - Network abstraction layer written in Swift.
Cleanse - Lightweight Swift Dependency Injection Framework
AFNetworking - A delightful networking framework for iOS, macOS, watchOS, and tvOS.
Needle - Compile-time safe Swift dependency injection framework
swift-graphql - A GraphQL client that lets you forget about GraphQL.
Typhoon - Powerful dependency injection for Objective-C ✨✨ (https://PILGRIM.PH is the pure Swift successor to Typhoon!!)✨✨
protobuf-swift - Google ProtocolBuffers for Apple Swift
Dip - Simple Swift Dependency container. Use protocols to resolve your dependencies and avoid singletons / sharedInstances!
Netfox - A lightweight, one line setup, iOS / OSX network debugging library! 🦊
Kraken - Simple Dependency Injection container for Swift. Use protocols to resolve dependencies with easy-to-use syntax!