Skip to content

Commit

Permalink
Merge branch 'master' of github.com:GraphQLCollege/fullstack-graphql
Browse files Browse the repository at this point in the history
  • Loading branch information
okjulian committed Aug 19, 2018
2 parents 4606b51 + 15a9368 commit 52e65da
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 8 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ All types of contributions are welcome! Here is a little guide on how to contrib

### Bugs/Typos

If you see a bug or typo please open a github issue.
If you see a bug or typo please open a GitHub issue.

### Fixes

Expand All @@ -38,7 +38,7 @@ Please file an issue to suggest new chapters. Chapter suggestions are always wel

### Questions

If you have any questions regarding the book, or GraphQL in general, please create a new conversation in https://spectrum.chat/graphql instead of a Github issue.
If you have any questions regarding the book, or GraphQL in general, please create a new conversation in https://spectrum.chat/graphql instead of a GitHub issue.

## License

Expand Down
12 changes: 6 additions & 6 deletions manuscript/chapter-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Another benefit of GraphQL is that it optimizes network usage by reducing HTTP p

GraphQL is a domain specific typed language to design and query data.

A domain specific language, or DSL, is a language built for a single application domain. They are the opposite of general purpose languages like Javascript, Ruby, Python or C, which are applicable across different domains. There are many popular DSLs in use nowadays, CSS is a DSL for styling and HTML is a DSL for markup. GraphQL is a DSL for data.
A domain specific language, or DSL, is a language built for a single application domain. They are the opposite of general purpose languages like JavaScript, Ruby, Python or C, which are applicable across different domains. There are many popular DSLs in use nowadays, CSS is a DSL for styling and HTML is a DSL for markup. GraphQL is a DSL for data.

It is a typed language. This means that it uses types to define resources, it adds types to each resource's fields. It also uses types to statically check for errors. Being a typed language is the source of many of GraphQL's biggest assets, like enabling automatic API introspection and documentation.

Expand All @@ -22,17 +22,17 @@ Developing API servers and clients is the main use case of GraphQL. Backend deve

Even though services generally expose GraphQL through their HTTP layer, GraphQL is not tied to HTTP or any other communication protocol.

GraphQL is a specification. This means that it specifies how it should work, allowing anyone to implement GraphQL in any programming language. There is an official implementation in Javascript called `graphql-js`, but there are also many other incarnations in other programming languages like Ruby, Elixir and more.
GraphQL is a specification. This means that it specifies how it should work, allowing anyone to implement GraphQL in any programming language. There is an official implementation in JavaScript called `graphql-js`, but there are also many other incarnations in other programming languages like Ruby, Elixir and more.

## Organization of the book

With this book you will learn how to develop a complete GraphQL client-server application from scratch. You will learn how to fetch data from the client, how to design that data in the server, how to develop NodeJS GraphQL servers and finally how to create React GraphQL clients.
With this book you will learn how to develop a complete GraphQL client-server application from scratch. You will learn how to fetch data from the client, how to design that data in the server, how to develop Node.js GraphQL servers and finally how to create React GraphQL clients.

The first two chapters will teach you how to fetch data using GraphQL. The first chapter will teach you how to create data. The second chapter will teach you how to design schemas. You will learn these pure GraphQL concepts, without the need of thinking about HTTP servers or clients. GraphQL is an abstraction that allows you to think about data without worrying about transport. You will build a schema, queries and mutations using Javascript and a couple of GraphQL libraries.
The first two chapters will teach you how to fetch data using GraphQL. The first chapter will teach you how to create data. The second chapter will teach you how to design schemas. You will learn these pure GraphQL concepts, without the need of thinking about HTTP servers or clients. GraphQL is an abstraction that allows you to think about data without worrying about transport. You will build a schema, queries and mutations using JavaScript and a couple of GraphQL libraries.

The rest of the chapters will focus on building GraphQL servers and clients.

The third chapter, GraphQL APIs, will teach you how build GraphQL HTTP servers using NodeJS and Apollo server. You will learn how to expose a GraphQL schema over HTTP, how to connect to a database, how to handle authentication and authorization and how to organize your files.
The third chapter, GraphQL APIs, will teach you how build GraphQL HTTP servers using Node.js and Apollo server. You will learn how to expose a GraphQL schema over HTTP, how to connect to a database, how to handle authentication and authorization and how to organize your files.

In the fourth chapter, GraphQL Clients, you will learn how to write GraphQL clients using React and Apollo client. You will learn how to ask for and create data using Apollo's `Query` and `Mutation` components, and also how to handle authentication.

Expand All @@ -42,7 +42,7 @@ You will learn how to test GraphQL APIs and clients in the sixth chapter.

## Sample application

Through the course of this book you will learn how to build a Pinterest clone called Pinapp using GraphQL, NodeJS, React and Apollo client.
Through the course of this book you will learn how to build a Pinterest clone called Pinapp using GraphQL, Node.js, React and Apollo client.

Pinapp should allow users to:

Expand Down

0 comments on commit 52e65da

Please sign in to comment.