Real-time GraphQL API in Elixir & Phoenix

Dive into the functional programming realm with none other than Elixir, the stack which powers Whatsapp, Discord etc.

4.05 (11 reviews)
Udemy
platform
English
language
Web Development
category
instructor
Real-time GraphQL API in Elixir & Phoenix
201
students
4.5 hours
content
Apr 2022
last update
$59.99
regular price

What you will learn

Create fully featured GraphQL API in Elixir & Phoenix

Learn to implement authentication,, authorization, Queries, Mutations, Subscriptions in the realm of pure functional programming language Elixir.

Queries, Mutations, Subscriptions? You name it we have it.

Dive into the tech stack which powers our very own WhatsApp, Discord, Pinterest and alike.

Why take this course?

Create GraphQL API in Elixir. The language which powers, in one way or another (ErLang) Whatsapp, Discord, Pinterest etc.

We will be using Phoenix Framework, the fantastic MVC framework for developing backends and full stack projects in Elixir. Consider Phoenix more like Express of Node.js but way more cooler of course. Well, Elixir altogether is cooler than any other language I code but nevertheless, one thing at a time.

Architecture

  1. Users

    1. Register User

    2. Login

    3. Get Authenticated User

    4. Logout

  2. Rooms

    1. Create Rooms

    2. Get All Rooms

    3. Delete Room and all of it's messages

  3. Messages

    1. Post Messages (persisted  to db) to a particular room.

    2. Subscribe to a particular room to get the newly posted message notifications in real time.

  4. Pagination

    1. Cursor Based Pagination for fetching messages so that we don't give back all the messages of a room at once (which could be of thousands of number as you can imagine).

  5. Protected Routes

    1. Implement private routes to maintain an access control list => what can be accessed and what not. For example, a non authenticated user (guest) should not have access to the following apis

      1. Create Room

      2. Post Message to a Room

      3. etc...

  6. Insomnia & GraphQL Playground

    1. Test the API with Insomnia & GraphQL Playground (For testing Subscriptions), along the way, while developing each route.

  7. A lot more

    1. We will be learning a lot more than written, about Elixir, Phoenix, GraphQL, and creating APIs altogether.

Content

Intro & Getting started with Phoenix and GraphQL

Intro
Giving Context
Tools
Setting up GraphQL

User Entity

Setting up User schema
User Registration
Handling Ecto Changeset Errors Beautifully
Get all Users

Authentication and Authorization

Authentication and Authorization
Get Authenticated User

Rooms

Create, React and Delete Rooms

Messages

Create, Read and Delete Messages

GraphQL Subscriptions

Setting up Subscriptions and Subscribing to a room

Pagination

Cursor Based Pagination in Messages

Config

Enabling CORS

Screenshots

Real-time GraphQL API in Elixir & Phoenix - Screenshot_01Real-time GraphQL API in Elixir & Phoenix - Screenshot_02Real-time GraphQL API in Elixir & Phoenix - Screenshot_03Real-time GraphQL API in Elixir & Phoenix - Screenshot_04

Reviews

Alexander
October 6, 2023
The course was informative and I definitely learned a lot. It's taught in a conversational style--like someone coming to your desk to explain something to you rather than a formal lecture. There were a few places where a git repo with the code would have been handy. Sometimes it's a bit hard to follow the code changes in the video, and I found myself doing a lot of pausing and going back a few seconds. But definitely a good course.

Charts

Price

Real-time GraphQL API in Elixir & Phoenix - Price chart

Rating

Real-time GraphQL API in Elixir & Phoenix - Ratings chart

Enrollment distribution

Real-time GraphQL API in Elixir & Phoenix - Distribution chart
4663964
udemy ID
4/28/2022
course created date
5/1/2022
course indexed date
Bot
course submited by