Tutorialspoint

GraphQL API with Node.js, TypeScript, PostgreSQL

Learn to implement authentication,, authorization, CRUD, relationships, Cursor based pagination and a lot more in one of the most popular tech stack out there.

Course Description

Create GraphQL API in Node.js & TypeScript. Every line of code will be striclty typed. No more "any" type intuitions and the flaws of JavaScript.

We will be using Node.js with Express, Nexus Schema for GraphQL, Prisma as an ORM for PostgreSQL, Redis and of course everything will be written in TypeScript, including the auto generated code.

Style

  1. Hands on

    1. We will be spending majority of the time in our very own VS-Code. But we will also be using Playground/Insomnia for testing our GraphQL API.

    2. I recommend you code along. And try to watch it at 1.5x speed at least. It saves time. 

Architecture

  1. Users

    1. Register User (Create a new User)

    2. Login (Session based authentication with caching in redis)

    3. Get Authenticated User (Get the currently authenticated user details => more like an api which tells our api consumers that they are authenticated or not => will be judged by the validity of the cookie passed in the requests => our backend will check the cookie's validity and spit out 401 error if the cookie is invalid/absent)

    4. Logout

    5. Get all Users

  2. Posts

    1. Create Posts (A user can create as many posts it wants => one to many relationship)

    2. Their relationship with User (Each post will be associated to a single user as it's author/creator => many to one relationship)

    3. Get all Posts

  3. Pagination

    1. Difference between Cursor and Offset based paginations.

    2. Cursor based pagination implementation.

Tech Stack

  1. Language & Frameworks

    1. Node.js

    2. Express

    3. TypeScript

  2. Libraries

    1. PostgreSQL

      1. @prisma/client

    2. GraphQL

      1. nexus (for code oriented GraphQL code base)

      2. apollo-server-express

    3. Authentication

      1. express-session (for authentication => session based and cookies)

    4. Redis Cache

      1. ioredis

      2. connect-redis (for storing sessions in redis,, for authentication)

Goals

  • Create GraphQL API with Nodejs, Express, TypeScript, PostgreSQL, Prisma, and Redis

  • Learn to implement authentication, authorization, CRUD, relationships, Cursor based pagination and a lot more in one of the most popular tech stacks out there.

  • Learn all those optimized practices like pagination (cursor), query complexity, caching etc.

  • Learn how to build a practical project, showcase your skills, and get a job. No more theoretical stuff with uncertain results.

  • Learn testing GraphQL APIs with insomnia and playground.

Prerequisites

  • Basic understanding of the following (A database-backed todo list experience would suffice) - 
  • Node.js & Express
  • TypeScript
  • PostgreSQL
  • GraphQL
Show More

Curriculum

Tutorialspoint
Feedbacks
  • No Feedbacks Posted Yet..!
GraphQL API with Node.js, TypeScript, PostgreSQL
This Course Includes
  • 2.5 hours
  • 6 Lectures
  • Completion Certificate Sample Certificate
  • Lifetime Access Yes
  • Language English
  • 30-Days Money Back Guarantee

Sample Certificate

Use your certification to make a career change or to advance in your current career. Salaries are among the highest in the world.

We have 30 Million registered users and counting who have advanced their careers with us.

X

Sample Certificate