Zero to Production with Fullstack GraphQL and React with Hasura team

certificate
Recording and certification are available to Multipass and Full ticket holders only
Please login if you have one.
Rate this content
Bookmark

Hasura is a free and open-source GraphQL Engine that can help supercharge your GraphQL adoption, whether it is for a new application or for an existing one. The workshop will cover:


- A basic introduction to GraphQL

- Using GraphQL to make CRUD operations from a React application

- Setting up access controls to data

- Building real-time components in React using GraphQL Subscriptions

- Wrapping existing REST APIs with GraphQL servers that can be deployed on serverless platforms, and then merging them into a single endpoint using Remote Schemas

- Triggering serverless functions on database events

- In short, we’ll go through how React developers can adopt realtime GraphQL and serverless.

This workshop has been presented at React Summit 2020, check out the latest edition of this React Conference.

FAQ

GraphQL is a query language for APIs and a runtime for executing those queries by using a type system you define for your data. It is important because it allows clients to request exactly the data they need, making it possible to get all required data in a single request, which can improve the efficiency of data retrieval and reduce bandwidth usage.

Unlike REST APIs that require loading from multiple URLs, GraphQL APIs get all the data your app needs in a single request. Users can specify exactly what data they need, which often avoids over-fetching or under-fetching data, unlike REST APIs.

The main benefits of using GraphQL include improved data retrieval efficiency, reduced number of API requests, flexible data querying capabilities, and better performance in handling complex systems with multiple and diverse data objects.

A GraphQL schema is a blueprint of the query language's data types and defines how clients can access the data points. It is the basis of the API's structure, specifying the types of data that can be queried and the relationships among those types.

In GraphQL, 'queries' are used to fetch data and 'mutations' are used to modify data. Queries can retrieve the data according to the specified schema, while mutations change server-side data, like updating, deleting, or creating new records.

GraphQL can enhance the developer experience by providing powerful development tools, reducing the amount of code developers need to write, offering introspection capabilities, and allowing for detailed error messages which help in debugging and development.

Resolvers in GraphQL are functions that handle the fetching of data for a specific field in a schema. They connect the GraphQL server with a data source, such as a database, and define the technique for fetching or modifying the data associated with that field.

Hestera is a tool used in GraphQL implementations that enhances performance by batching database queries, caching query results, and automating parts of the GraphQL API setup. It helps in managing data interactions more efficiently and supports extensions like remote schemas and event triggers.

Allison Kunz
Allison Kunz
162 min
15 Jul, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

GraphQL offers a solution to performance issues by compiling queries and leveraging structured databases, which results in faster performance with fewer resolvers. Hasura extends these capabilities by allowing for customizations through remote schemas and actions, event triggers, and batch live queries for scalability. You can manage one-to-one, one-to-many, and many-to-many relationships using the Hasura console. Setting up a project in Hasura Cloud involves creating a Hasura Cloud account, a Heroku account, and a new Hasura Cloud project. The Hasura CLI is essential for applying migrations and managing configurations. Authentication can be streamlined using Auth0, and the integration with Hasura ensures secure and efficient user management. GraphQL's ability to handle interconnected data efficiently avoids the complexities of traditional REST APIs. The Apollo Client is a vital tool for integrating GraphQL on the front end, and the Hasura platform supports various databases like PostgreSQL and MySQL. The workshop also addresses troubleshooting common issues and setting up environment variables correctly. To get started, download and unzip the boilerplate for a Next.js front-end application for a to-do app.
Video transcription and chapters available for users with access.