Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Build an Instagram Clone with NestJS & Next.js
Rating: 4.9 out of 5(10 ratings)
169 students

Build an Instagram Clone with NestJS & Next.js

Master modern fullstack development by building an Instagram clone with NestJS, Next.js, tRPC & Drizzle ORM
Created byMichael Guay
Last updated 2/2026
English
English [Auto],

What you'll learn

  • Build an end-to-end type-safe fullstack application using NestJS, Next.js, and tRPC
  • Design and share types seamlessly between frontend and backend using Turborepo
  • Build beautiful & customizable UI components with shadcn & tailwindcss
  • Implement JWT authentication using Better Auth to protect our APIs and UI with secure cookies
  • Build real production features including posts, stories, likes, comments, and followers
  • Learn how to upload & serve static files from the UI to the backend locally and in AWS S3
  • Model and query relational data using PostgreSQL and Drizzle ORM
  • Deploy a fullstack application to production using AWS Elastic Beanstalk and Vercel
  • Implement a CI/CD pipeline to build and deploy our code with every commit
  • Configure a custom domain for UI and backend

Course content

22 sections94 lectures15h 47m total length
  • Prerequisites2:09

    Engage in a hands-on build of a real-world Instagram clone with NestJS and Next.js, applying TypeScript fundamentals, React concepts, and backend patterns via attached docs.

  • GitHub Repository0:08
  • Repository & Support1:12

    Learn about the monorepo setup with TurboRepo, access the full production Instagram clone code on GitHub, and follow guidance for forks and environment variables to reproduce issues.

  • Project Setup16:00

    Set up a pnpm-based turbo repo for a TypeScript monorepo, organizing apps and packages and configuring tasks to run the Next.js development server at localhost:3000.

  • Tailwind + Shadcn7:24

    Discover how to integrate Tailwind CSS and ShadeCN into a Next.js app, install dependencies, configure PostCSS, update tsconfig paths, and begin using prebuilt components for responsive styling.

Requirements

  • Solid understanding of TypeScript fundamentals
  • Basic familiarity with NestJS, React & Next.js
  • Comfort reading documentation and learning new libraries independently

Description

This course walks you through building a real Instagram-style application from scratch using a modern, type-safe fullstack stack.

You will build a fully featured app using NestJS, Next.js, tRPC, PostgreSQL, Drizzle ORM, Tailwind, shadcn/ui, Better Auth, and Turborepo. The focus of this course is not just features, but architecture, end-to-end type safety, and an excellent development experience through shared types and code between the frontend and backend.

This is a hands-on, production-focused course where every feature is built end to end, from database schema to API to UI, using patterns you can reuse in real-world applications.

What You Will Build

By the end of this course, you will have a complete Instagram-style application that includes:

  • Secure authentication with shared types across backend and frontend

  • A type-safe API using tRPC with full end-to-end inference

  • Posts with image uploads, likes, comments, and saved posts

  • Stories, user profiles, followers, and profile pictures

  • A modern UI built with Tailwind and shadcn/ui

  • A scalable monorepo using Turborepo with shared packages

  • A NestJS backend designed for real production workloads

  • Production deployment using AWS and Vercel

What You Will Learn

  • How to design end-to-end type-safe APIs with tRPC

  • How to share types and logic between frontend and backend safely

  • How to structure a scalable Turborepo monorepo

  • How to build clean NestJS services and routers

  • How to model data with PostgreSQL and Drizzle ORM

  • How to implement JWT authentication correctly across the stack using Better Auth

  • How to handle file uploads and media in production using AWS S3

  • How to deploy a fullstack application to production using AWS ElasticBeanstalk

Who This Course Is For

This course is for JavaScript and TypeScript developers who want to build real fullstack applications with modern tooling and strong type safety.

It is especially valuable for developers who care about clean architecture, developer experience, and eliminating API mismatches between frontend and backend.

You should be comfortable with TypeScript fundamentals & basic NestJS + Next.js concepts.

Why This Course

Most tutorials stop at simple examples or skip over important architectural decisions. This course focuses on building a real application with shared types, real data models, and production deployment so you can apply the same patterns in your own projects or at work.

Who this course is for:

  • TypeScript developers who want to build real fullstack applications
  • Developers interested in end-to-end type safety with tRPC
  • Engineers who want to improve developer experience by sharing types across the stack
  • Frontend developers who want a production-ready backend architecture
  • Backend developers who want to modernize their frontend workflow