Giter VIP home page Giter VIP logo

swift-graphql's Introduction

A GraphQL client that lets you forget about GraphQL.

CI Tests

https://graphql.org/swapi-graphql/

Features

  • โœจ Intuitive: You'll forget about the GraphQL layer altogether.
  • ๐Ÿ– Time Saving: I've built it so you don't have to waste your precious time.
  • โ˜๏ธ Generate once: Only when your schema changes.
  • โ˜Ž๏ธ Subscriptions: Listen to subscriptions using webhooks.
  • ๐Ÿ” High Level: You don't have to worry about naming collisions, variables, anything. Just Swift.

Overview

SwiftGraphQL is a GraphQL Client that ships with a type-safe query builder. It lets you perform queries, mutations and listen for subscriptions. The query builder guarantees that every query you can create is valid and complies with the GraphQL spec.

The library is centered around three core principles:

  • ๐Ÿš€ If your project compiles, your queries work.
  • ๐Ÿฆ‰ Use Swift in favour of GraphQL wherever possible.
  • ๐Ÿ•Š Packages shouldn't lock you in to the "framework".

You can use only parts of SwiftGraphQL that are useful to you (e.g. use GraphQLWebSocket implementation but not the query builder, or WebSocket but not the client).

Documentation

You can find detailed documentation on the SwiftGraphQL page at https://www.swift-graphql.com/.

Examples

You can find examples of how to use a local GraphQL API or remote one in the /examples directory.

  • thesocialnetwork - a simple chat app that shows how to swift-graphql with queries and subscriptions,
  • GitHubStars - shows how to use GitHub API with swift-graphql.

Other Libraries

SwiftGraphQL solves a set of specific problems but it doesn't solve every problem. Depending on your needs, you may also want to check out


Thank you

I would like to dedicate this last section to everyone who helped develop this library.

  • First, I would like to thank Dillon Kearns, the author of elm-graphql, who inspired me to write the library, and helped me understand the core principles behind his Elm version.
  • Second, I would like to thank Peter Albert for giving me a chance to build this library, having faith that it's possible, and all the conversations that helped me push through the difficult parts of it.
  • Thirdly, special thanks to Phil Pluckthun who explained all the bits of how urql and wonka work,
  • Fourthly, thanks to Orta Therox for helping me navigate Combine.
  • Lastly, I'd like to thank every contributor to the project. SwiftGraphQL is better because of you. Thank you!

Thank you! ๐Ÿ™Œ


License

MIT @ Matic Zavadlal

swift-graphql's People

Contributors

maticzav avatar amzd avatar github-actions[bot] avatar fedos avatar idiomatic avatar rushairer avatar pabloszx avatar marmarelis avatar yiyingzz avatar tamc avatar teddy-bersentes avatar lromyl avatar robsontenorio avatar keuha avatar sundea avatar dimamachina avatar singingwolfboy avatar dato avatar cooperwolfe avatar barnard-b avatar antonnyman avatar codifilo avatar

Stargazers

whateverbest avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.