Code Monkey home page Code Monkey logo

excatterarg / a-walk-in-graphql Goto Github PK

View Code? Open in Web Editor NEW

This project forked from thinkb4/a-walk-in-graphql

0.0 1.0 0.0 1.13 MB

The intention of this road map is to share with you our own learning experience (one of many paths you can take to grok the language) and to draw you to the highest quality information (which we won't be ever able to write in a better way)  keeping you on the implementation agnostic spirit of the language, providing abstract examples as well as practical exercises in different languages so you can understand the correlations and differences without losing focus on the main topic: GraphQL. We'll walk through this starting from the language and the API definition on the backend, gradually increasing the complexity as the walk develop; it might contain new examples on the future, or more "days" including client-side, testing or architecture specific topic, or we might create another walk for them, we don't really know.

License: MIT License

JavaScript 15.97% Python 10.47% Java 67.62% C# 5.94%

a-walk-in-graphql's Introduction

A walk in GraphQL

Preface

A lot of information has been written about GraphQL since it was unleashed to the world by Facebook in 2015. As the curious nerds we are, we tend to embrace the self-taught approach first, which implies research, reading documents and tutorials, and more documents and tutorials, and trying/error in a continuous loop, until we feel confident with the topic.
The intention of this road map is to share with you our own learning experience (one of many paths you can take to grok the language) and to draw you to the highest quality information (which we won't be ever able to write in a better way) in the attempt to prevent you from coming across misleading (when not completely wrong) documents outside in the wild; and keeping you on the implementation agnostic spirit of the language, providing abstract examples as well as practical exercises in different languages so you can understand the correlations and differences without losing focus on the main topic: GraphQL.

We'll walk through this starting from the language and the API definition on the backend, gradually increasing the complexity as the walk develop; it might contain new examples on the future, or more "days" including client-side, testing or architecture specific topic, or we might create another walk for them, we don't really know.

Hopefully your walk will be much easier than ours!

Collaborators

  • Ezequiel Alvarez - @ealvarezk
    • Execution coordinator and reviewer
  • Ezequiel Tejerina - @quequitejerina
    • Python exercise contributor and reviewer
  • Franco Gribaudo - @fgriba
    • Java exercise contributor and reviewer
  • Cristian Buffa - @cristianbuffa
    • NetCore exercise contributor and reviewer
  • Javier Valderrama - @Jaxolotl
    • Course writer, JavaScript exercise contributor and reviewer

Special thanks to our external reviewers!

Table of contents

  • Intro
    • What's a graph?
    • What's GraphQL and what's the graph part all about
    • GraphQL vs RESTful
    • Schema Basics
      • SDL - Schema Definition Language
      • Named Types
      • Input and Output Types
      • Lists and Non-nullable
      • Root operation Types
        • Query
        • Mutation
        • Subscription
    • Resolvers
    • Learning resources
  • Setup
  • Day 1
    • Queries and Resolvers
      • Query
      • Resolver
      • Exercise
      • Learning resources
  • Day 2
    • Arguments and Variables
      • Argument
      • Variable
      • Exercise
      • Learning resources
  • Day 3
    • Input Objects and Enums
      • Input Object
      • Enum
      • Exercise
      • Learning resources
  • Day 4
    • Mutations
      • Mutation
      • Description
      • Learning resources
      • Exercise
  • Day 5
    • Interfaces and Unions
      • Interface
      • Union
      • Exercise
      • Learning resources
  • Day 6
    • Extending SDL definitions
      • Extend
      • Scaling our Schema
        • Principled GraphQL
        • Schema Stitching
        • Federation
      • Exercise
      • Learning resources
  • Day 7
    • Errors
      • Description
      • Exercise
      • Learning resources

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.