by Robin Wieruch

The Road to Next

Become a Full-Stack Developer with Next.js and React Server Components
hero-image
Embrace a new Paradigm

React Server Components

Discover a new perspective on building full-stack web applications with Server Components.

  • Database Read Access in Components
  • Streaming Components to the Browser
  • Awaiting Components Asynchronously
  • Partial Prerendering for an improved Performance
f1
f1
Embrace a new Power

Server Actions

Access the Server from React Components for writing to the database or calling APIs.

  • Access Server Logic in Components
  • Operate on the Database
  • Native Web Standards with Forms
instructor
Meet your Instructor

Robin Wieruch

Robin is a software engineer who has authored several books and courses about JavaScript and React. He has been a developer for more than a decade and has experience in building web applications and consulting for startups and companies across the world.

During his freelance tenure, Robin collaborated with diverse entities like MakerDAO in blockchain, TRUMPF in high-precision laser technology, and the US government for its energy sector, among other ventures.

  • Bestselling JavaScript Book Author
  • 3.000.000+ Blog Visits per Year
  • 100.000+ Book Readers and Course Students
  • 20.000+ Twitter Followers
  • 8.000+ GitHub Followers
  • 7.000+ GitHub Stars
  • Awarded GitHub Star (Multiple Times)
  • Technical Co-Founder of CloudCamping
  • Dad of two wonderful Boys
Startup Tech Stack

The Tech Stack

Next.js
The most popular full-stack React framework
Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components.
React
The most popular frontend framework
React lets you build user interfaces out of individual pieces called components. Create your own React components and combine them into entire screens, pages, and apps.
Prisma
Next-generation TypeScript ORM
Prisma provides the best DX for your team to work and interact with databases. Even complex topics like connection pooling, caching, real-time subscriptions become possible.
Supabase
Serverless Postgres
Supabase is an open source Firebase alternative. Start your project with a Postgres database and add more services as you need them.
TypeScript
Type-safe JavaScript as industry standard
Unlock the Power of TypeScript: Dive into a world where strong typing leads to more reliable code. Embrace the confidence to tackle complex projects.
Zod
TypeScript-first schema validation
Zod ensures safer TypeScript-based schema validation, reducing bugs and enforcing data integrity with concise syntax and seamless TypeScript integration.
Lucia Auth
Zero Vendor Lock-in Authentication
Lucia is an auth library for your server that abstracts away the complexity of handling sessions. It works alongside your database to provide an API that's easy to use.
Vercel
The best deployment platform for Next.js
Vercel is a cloud platform for rapidly deploying and scaling modern web projects. Offering a seamless integration Next.js, it is the best fit for this tech stack.
Tailwind
Industry standard for CSS Styling
Tailwind CSS is a highly customizable utility-first CSS framework that streamlines the styling process by providing an extensive set of pre-built classes.
Shadcn/UI
Popular reusable components library
Discover a collection of exquisitely crafted components ready for seamless integration into your applications. Accessible, fully customizable, and proudly open source.
The Road to Next

Developer Journey

React Server Components (RSC)
Asynchronous Components
RSC vs Client Components
Client-Server Composition
Component Directives
Streaming
Partial Pre-Rendering
Suspense
Fallback Loading
Server Actions
Declaration
Usage Client Components
Usage Server Components
With and Without Forms
CRUD Operations
Create a Record
Read a Record
Update a Record
Delete a Record
Database
Domain Modeling
Schema Definition
Seeding & Migrations
UI Database Exploration
Multi-Model Relationship
ORM
Partial Selection
Joins
Upserts
Transactions
Authentication
Sign Up a User
Sign In a User
Sign Out a User
Get Current Session
Authorization
Conditional UI Components
Protected Routes
Protected Server Actions
Pages, Layouts, Templates
Static vs Dynamic Pages
Shared and Nested Layouts
Stable Template
Route Handler
New Hooks
useTransition
useFormStatus
useActionState
File Conventions
Pages
Loading, Error, Not Found
Route Groups
Private Folders
Navigation
Router & Link Components
Header & Sidebar
Tabs & Breadcrumbs
Redirects
Caching
Full Route Cache
Request Memoization
Data & Router Cache
generateStaticParams()
Client-Side Cache
Validation & Feedback
Server-Side Validation
Form-Field Feedback
Toast Feedback
Feedback after Redirect
Cookies
User Preferences
Authentication
User Feedback
Progressive Enhancement
Works without JavaScript
Fallback with <noscript>
Project Structure
General Folder Structure
App Router Structure
Feature Folders
Shared Folders
Styling
Light & Dark Mode
Utility-First CSS
Animations
Theming
Custom Components
Reusable Components
Component Composition
Controlled Components
Intersection Observer
React
useState, useEffect, useRef
cache, Suspense
cloneElement
useImperativeHandle
Custom Hooks
TypeScript
Inference & Assertions
ReturnType & Awaited
Type Merging
Generics
CSS
Vertical & Horizontal Layouts
Animations
Conditional Classes
Responsive Design
Server-Side Operations
Sorting
Searching & Filtering
Offset-Based Pagination
Cursor-Based Pagination
Search Params
useRouter, usePathname, useParams
useSearchParams vs Search Params
URLSearchParams & Typed Params
URL State & Default State
React Query
Prefetching in Server Components
Initial State in Client Component
Client-Side State Management
Refetching & Invalidation
Infinite Scrolling
Software Craftsmanship
Singleton, Sliding Window
Inversion of Control
Premature Optimizations
DRY with Abstractions
Happy & Unhappy Paths
Configuration over Composition
Layers
UI Layer
Action Layer
Query Layer
Public API Layer
Active Terminals
Terminal 1: Dev Server
Terminal 2: Git
Terminal 3: DB Studio
Find Your Perfect Fit

Pricing Plans

Select the journey that suits your needs and benefit from the this learning experience.

Developer Journey

$199
$149

The Road to Next as video course experience.

  • The Road to Next (Video)
  • Certificate of Completion
  • 14-day refund guarantee
Join the Waitlist

Entrepreneur Journey

$399
$299

The Road to Next and The Road to SaaS as video course experience.

  • The Road to Next (Video)
  • The Road to SaaS (Video)
  • SaaS Boilerplate Project
  • Certificate of Completion
  • 14-day refund guarantee
Join the Waitlist
The Road to SaaS

Entrepreneur Journey

Domain
Buy a Domain
Email DNS Records
Website DNS Records
Business Emails
Vercel
Custom Domain
Environment Variables
System Variables
Integrations
Message Queue
Sending Events
Receiving Events
Typed Events
E-Mail Integration
Transactional Emails
Custom Domain
DKIM, SPF, DMARC
Templates & Previews
Organizations
User:Organization (M:N)
Memberships
Email Invitations
Roles & Permissions
Advanced Authentication
Email Verification
Password Forgot
Password Change
Password Reset
TypeScript
Type Guards
File Upload
AWS S3
AWS IAM
File Upload & Download
Presigned URLs
Stripe Billing
Pricing Plans
Products & Prices
Customer, Customer Portal
Taxes & Invoices
Stripe Subscriptions
Subscriptions & Webhooks
Cancellation & Change Plan
Product Provisioning
Trials & Discounts
AI
GitHub Copilot
OpenAI Integration
Midjourney Usage
v0 Scaffolding
Bugs
Downtime Monitoring
Error Tracking
Bug Reporting
Software Craftsmanship
Planning, Implementing, Refactoring
User Experience
Edge Cases, Hot Fixes
Race Conditions & Idempotence
Real World Business Cases
Ticketing System
Organizations with Users
Memberships and Roles
Invitations & Notifications
Billing & Subscriptions
Model Relations
One-to-One
One-to-Many
Many-to-Many
Self-Relations
Database Concepts
Aggregations
Referential Actions
Non-Nullable Relations
External DB References
Polymorphic Relationships
Security
Server Only Code
Timing Attacks
Rate Limiting
E-Mail Throttling
Layers
Service Layer
Data Access Layer
Protected API Layer
Active Terminals
Terminal 1: Dev Server
Terminal 2: Git
Terminal 3: DB Studio
Terminal 4: Email
Terminal 5: Stripe
Terminal 6: Message Queue
Testimonials

What Developers Say

"PLACEHOLDER: If this should be your testimonal, hit me up!"
Max Mustermann
Founder of Mustermann
"PLACEHOLDER: If this should be your testimonal, hit me up!"
Max Mustermann
Founder of Mustermann
"PLACEHOLDER: If this should be your testimonal, hit me up!"
Max Mustermann
Founder of Mustermann

My students come

from these places

Have any questions?

Frequently Asked Questions

Is this a video course or a starter kit?

Both. It's a course that teaches you everything about Next.js. In the end you will have a fully functional SaaS starter kit that you can use to build your own SaaS.