Skip to main content
CF

Full-Stack GraphQL with Absinthe, Phoenix, and React

4h 28m 38s
English
Paid

GraphQL is revolutionizing the way developers build APIs. Gone are the days when the server decided the shape of the response data. GraphQL puts the client in control so it can fetch exactly the data it needs and nothing more.


So what does it take to put together a full-stack GraphQL app using:

  • Phoenix as the backend server,

  • Absinthe for the GraphQL API, and

  • React with Apollo on the frontend?

About the Author: Pragmatic Studio

Pragmatic Studio thumbnail

Pragmatic Studio is a US-based teaching company founded by Mike Clark and Nicole Clark — both long-running Ruby and Elixir educators. The studio publishes paid courses on the Ruby on Rails, Elixir, and Phoenix tracks at the level of comprehensive working-engineer reference material rather than introductory tutorials.

The CourseFlix listing carries six Pragmatic Studio courses spanning their full curriculum: Ruby Programming, Ruby on Rails 6, Ruby on Rails 7, Developing With Elixir/OTP, Full-Stack Phoenix, and Full-Stack GraphQL with Absinthe, Phoenix, and React. The teaching style is patient, project-oriented, and unusually rigorous about the foundational language and framework patterns.

Material is paid and aimed at developers building production proficiency with the Ruby and Elixir ecosystems. For broader content, see CourseFlix's Ruby on Rails, Elixir, and Phoenix category pages.

Watch Online 38 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 38 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Intro and Setup
All Course Lessons (38)
#Lesson TitleDurationAccess
1
Intro and Setup Demo
01:06
2
App and Design Overview. Part 1
01:39
3
App and Design Overview. Part 2
02:25
4
The Data Model. Part 1
08:16
5
The Data Model. Part 2
06:28
6
The Data Model. Part 3
02:19
7
Vacation Context. Part 1
09:54
8
Vacation Context. Part 2
02:49
9
Accounts Context
02:03
10
Absinthe Schema Definition
06:31
11
Resolving the Place Query
10:51
12
Querying All Places
08:06
13
Resolver Modules
03:02
14
Querying Relationships
08:24
15
Intro to Dataloader
08:00
16
Optimizing Queries with Dataloader
09:47
17
Dataloader Filtering and Ordering
09:29
18
Absinthe Mutations
12:15
19
API Authentication
09:59
20
Authenticating API Requests
09:51
21
Current User Query
03:11
22
Absinthe Subscriptions
09:27
23
React App Overview
08:00
24
Apollo Client
04:56
25
Query Component
10:57
26
Client-Side Query Caching
04:17
27
Searching For Places
09:50
28
Sign Up
10:13
29
Current User
08:38
30
Sign In
04:33
31
Sign Out
03:16
32
My Bookings
08:00
33
Place Page
06:49
34
Posting a Review
09:40
35
Booking a Reservation
07:08
36
Subscribing to Booking Changes
10:42
37
Refetching Queries
03:13
38
Pagination
12:34
Unlock unlimited learning

Get instant access to all 37 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What prerequisites should I have before taking this course?
Before enrolling in this course, you should have a basic understanding of JavaScript and web development. Familiarity with React will be beneficial as one section of the course focuses on building a client-side application using React. Additionally, some knowledge of backend development concepts will help, as the course covers server-side topics using Phoenix and Absinthe.
What projects or applications will I build during the course?
Throughout the course, you will build a full-stack application that utilizes GraphQL APIs. You will work on a vacation booking platform where users can query places, post reviews, and manage bookings. The course guides you through setting up the application, defining data models, and implementing features such as authentication, querying relationships, and real-time updates through subscriptions.
Is this course suitable for beginners in GraphQL?
Yes, the course is suitable for beginners who have a foundational knowledge of web development but are new to GraphQL. It starts with an introduction to setting up the necessary tools and gradually progresses to more advanced topics like optimizing queries with Dataloader and implementing subscriptions. The course is designed to build your skills incrementally.
How does this course compare to other GraphQL courses in terms of scope?
This course offers a comprehensive look at building full-stack applications with GraphQL, covering both server-side and client-side components. Unlike some courses that focus only on GraphQL queries, this course includes schema definition, mutations, authentication, and real-time subscriptions. It also integrates the Apollo Client for React, providing a full-stack perspective.
What specific tools and platforms are used in this course?
The course uses Absinthe for building GraphQL APIs on the server side, Phoenix as the web framework, and React for the client-side application. Apollo Client is used to manage data fetching in React. These tools are chosen to provide a modern and efficient stack for building scalable applications.
What topics are not covered in this course?
The course does not cover the basics of JavaScript or general web development. It assumes familiarity with these concepts. Additionally, it does not delve into advanced React features like hooks or context API beyond what is needed for integrating Apollo Client.
What is the expected time commitment for completing this course?
The course consists of 38 lessons, each designed to be concise and focused on specific topics related to building a full-stack GraphQL application. While the total runtime is not specified, students should be prepared to dedicate several hours per week to watching lessons, completing exercises, and building the project to gain a solid understanding of the material.