
Discover Next.js, a flexible React framework that provides building blocks to create fast web applications, covering routing, data, server side rendering, static site generation, and authentication.
Install Node and npm to set up a React app via CDN and render a simple home page; migrate to Next.js with npm for the exchange app.
Install and set up a Next.js app with npm, installing react, react-dom, and next, move the index file to the pages folder, and add a default export.
Use the Create Next App CLI to scaffold a Next.js project and run a development server on localhost:3000. Explore the folder structure—pages, api, public, and styles—and CSS modules for styling.
Learn how Next.js maps files in the pages directory to routes, creates pages like posts, and uses Link, Head, and Script to enable navigation and manage metadata and assets.
Master static assets in next.js by using the public folder for images and other files, and adopt the next/image component for responsive, optimized loading to prevent layout shifts.
Learn to style Next.js apps with global CSS imported in the app component for universal resets, and use CSS modules for component-level styles with unique class names, plus optional Sass.
Learn how to use a layout component in Next.js to share a default header, footer, and content across all pages, print children, and customize titles with the head component.
Explore how Next.js uses static generation and server side rendering to pre-render HTML, improve performance and SEO, then run JavaScript to make the page interactive.
Explore static generation in Next.js, with and without data, and learn how getStaticProps runs at build time to fetch data and pass props to a page.
Explore how server side rendering uses getServerSideProps to generate page HTML on every request, contrasting it with static props and explaining when to use SSR for frequently updated data.
Fetch data on the client side in Next.js with useState and useEffect to load post data and render its title and description for pages not needing SEO indexing.
Understand how the app component serves as the entry point for pages, handles page props via get initial props, and enables a custom app to persist layout and inject data.
Leads you through dynamic routes in Next.js by using bracket files and external data to statically generate pages with getStaticProps and getStaticPaths, yielding dynamic URLs.
Learn how Next.js handles 404 errors with dynamic routes and a default 404 page. Create a custom 404 by adding pages/404.js and exporting a default function, and understand fallback behavior.
Learn to create api routes in Next.js by building endpoints in the api folder that return json data with status 200 and are consumed in components with fetch.
Explore dynamic routes in Next.js using brackets and catch-all parameters, access route values with the useRouter hook, and enable client-side navigation with router.push.
Explore building a navigation header in Next.js using the Link component, map over an array of routes, and handle dynamic routes with path names and query parameters.
Learn to fetch data with swr, handle loading and error states, and cache data for future visits using stale while revalidate.
Learn how to connect a Next.js Nexus app to MongoDB using Mongoose, build a schema and model, and store and fetch data via an API endpoint.
Explore how to validate an http request in a Next.js app, extract the method, and handle get and post requests with appropriate responses and allowed methods.
Learn how SWR's stale-while-revalidate strategy fetches fresh data while caching results, and build reusable data hooks with useSWR and a custom get data hook using LWR for fast server-side rendering.
Customize a fetch function with a url param that returns json or throws error, using swr with onError to limit retries to ten, skip 404, and revalidate after five seconds.
Learn to configure SWR with LWR config to fetch and refresh data in a static site generated page, using get static props, fallback, and refresh intervals for dynamic updates.
NextJS is a great choice for growing as a React developer and for taking your React apps to the next level!
Because NextJS is growing fast and therefore in high demand. And there are good reasons for that: NextJS allows you to build React apps with built-in server-side rendering and page pre-rendering. Building great user experiences and search engine friendly (SEO!) React apps has never been easier!
In addition, NextJS makes building fullstack React apps (frontend + backend code combined in one project) extremely easy as well! Blend client-side and server-side code and build a NodeJS-based API side-by-side with your frontend React apps. It's a breeze with NextJS!
Want to add authentication? NextJS simplifies that as well and makes user signup, sign in and session management very convenient.
This course will take you from NextJS beginner to advanced level in no time!
In detail, this course will cover:
What is NextJS? And why would you use it?
Working with file-based routing
Adding dynamic routes and catch-all routes
Implementing different forms of page pre-rendering and server-side rendering
Working with data and adding data fetching + pre-fetching to your apps
Pre-generating dynamic and static pages
Optimizing images with the NextJS Image component
API routes
And much more!
For this course, you'll need basic React knowledge, though the course does come with a "React refresher" module in case it's been some time since you last worked with React.
After finishing this course, you'll be well prepared to build your own NextJS projects from the ground up and apply for NextJS positions!