Described as “The React Framework for Production”, Next.js makes it easy to build highly optimized web applications in React.
This course will guide you through learning Next.js by developing two examples: a fully static website, and a hybrid (static + server-side rendered) app.
The first example, a personal blog website, will introduce you to fundamental Next.js concepts such as pre-rendering, file-system based routing, and hydration.
It will show you how to load data in pages that are statically generated at build time, and how to style your pages in global CSS files or with the styled-jsx library that provides component-scoped styles.
The Deployment section will present you all the options for running your application in production, from fully-managed serverless platforms like Vercel to configuring your own Linux servers.
The second example you will develop is a shop website. This will be a more complex application that loads its data from a Headless CMS (Strapi) and uses advanced Next.js features such as Incremental Static Regeneration to automatically reflect changes in the backend data.
The website will use the popular Tailwind CSS library for styling, and the Next Image component for image optimization.
You will see different ways to load data from an external API, including writing your own API routes in Next.js, and how to choose the best approach for your specific requirements.
The example will include a secure authentication system based on JWT and cookies, and the React Query library will be used for caching data on the client side.
The full source code for all examples is provided, with an easy way to see the changes made in every lecture.
The course is up to date with the latest Next.js version i.e. 12.