
In this video, You will start by installing NextJS and we will cover what is required. Then we will jump into the file structure and look into where files are located and where will our code go.
Explore Next.js routing by building pages and nested routes with folder structure, using a shared layout to persist UI across routes like profile and its settings.
Explore Next.js file conventions, including loading and not found error boundaries, and learn how routes, layouts, and pages in the app directory handle data fetching and error handling.
Explain server versus client components in Next.js, including default server rendering, caching and SEO benefits, and how to mark a component with use client for interactive state.
Explore linking and navigation in Next.js using the Link component from next/navigation, the useRouter hook for programmatic navigation (push, back, forward, refresh, replace), and server component redirects.
Explore how to capture route data in Next.js using params and search params, for both server and client components, including dynamic and catch-all routes.
Learn how to fetch data from an API in Next.js server and client components, using updated fetch options, no cache, loading states, and JSON responses.
Build a Next.js project that fetches product data from an API and displays it across routes, using create next app and Tailwind, then run the dev server.
Build a three-column products list in Next.js using Tailwind and Shad UI, rendering product cards with images and dynamic routes to product pages.
Build a dynamic product page in Next.js by using a product folder with a url param to fetch data for a single product and render it in a dedicated component.
Learn to implement a loading state in a Next.js product page by building and styling a skeleton placeholder, wiring a loading component, and exploring data fetching with params.
Build a new Next.js project, explore route handlers, and implement CRUD operations—get all lists, post, update, and delete—while learning API building and caching strategies.
Explore the project diagram, set up a Next.js app with Tailwind and Chassis, connect MongoDB via Prisma, and implement API route handlers using get, post, put, and delete.
Create a new next app, install prisma for MongoDB, define a list model with id, maps_id, title, description, createdAt, configure the database URL, and generate the prisma client.
Build a list box form with a title input and description text area, including a submit button, styled with a flex column layout for a centered app Listify.
Capture input with a client component, manage form data with use state, and post to an api route to insert data into MongoDB via Next.js route handlers.
Discover how Next.js caches fetch requests and how to refresh routes after posting data using Next.js navigation's useRouter, ensuring the homepage reflects new entries.
Learn to build a list card component in Next.js using the Shared CDN and Tailwind, styling the card and implementing an editable dialog with a put workflow.
Learn to implement an edit flow with an edit button opening a dialog, manage open state with useState, and update title and description via a put request to the API.
Build a delete API route in Next.js with a route handler and Prisma to delete by id using the http method delete, returning json and enabling a ui delete action.
Explore the advanced Next.js server actions in a hands-on Talenti project that demonstrates creating, getting, editing, and deleting data without a back-end API, and compare it to REST APIs.
Set up a new Next.js project and connect a MongoDB database with Prisma. Define a talent schema, generate the Prisma client, and run the dev server.
Delete existing code, add an h1 with a logo, and use tailwind for a white background. Use Next.js font module to import a Google font (Reddit) and apply it.
Learn to build an add talent form with name, email, title, and skills, wire it to the database using server actions, and display talent cards by mapping fetched data.
Understand server actions: asynchronous server-side functions that mutate data, usable in server and client components for form submissions without API.
Use a server action to collect form data and create talent records with Prisma, capturing name, email, title, and skills for MongoDB storage via a post request.
Fetch and display talent data in a Next.js server action using Prisma with MongoDB, map the results, and refresh the cache with revalidate to reflect new data.
Create a talent card, show talent data, and enable delete, edit, and hire me actions wired to a server action using Prisma to delete from MongoDB with hidden id input.
Build an editable talent profile by launching a dialog form to update name, email, title, and skills, then save changes with responsive state handling.
Use server actions to mutate data in real time, edit emojis, save changes, delete items, and compare to REST API, with emails via Outlook, in the ultimate modern Next.js course.
Build a postie microblog app with Next.js, enabling GitHub authentication via next-auth, private routes, posting, like and delete functionality, Zod validation, and modern form handling with react-hook-form and chassis styling.
Set up next auth with GitHub provider in a Next.js project, configure env vars, routes, and Prisma adapter to connect authentication data to MongoDB.
Create and style a navbar component in a Next.js app, featuring a logo, avatar from session, and sign in/out logic with next image and CDN fonts.
Build a post display component in Next.js by fetching all posts with Prisma, mapping them to a card-based frontend, and enriching with user avatars and formatted dates.
Use date-fns to format relative post dates with format distance, show created at times, and implement a secure delete action using authentication, hidden post id, and next.js actions.
During the landing page fix, the lesson uses session data to show content only when the user is authenticated, prompting login and enabling post creation with TypeScript forms.
Wrap your client components with a session provider in the layout, then use the session hook to access the data object and read the user.
Conclude the full stack Next.js course by demonstrating how to add an update feature to posts, envisioning a Twitter clone, and inviting viewers to follow on YouTube and leave reviews.
Welcome to the World of Next.js!
Congratulations! You're about to embark on an exciting journey into the fast-paced world of Next.js, a powerful framework designed to help developers create high-performance, feature-rich web applications that truly stand out in today’s digital landscape.
Next.js enables the full potential of server-rendered React applications, merging the best aspects of web development into one developer-friendly framework. This comprehensive course will guide you through advanced Next.js features, helping you differentiate yourself in the job market and confidently tackle real-world projects. You’ll delve into authentication with the Next-Auth library, innovative data mutation techniques using server actions, and foundational concepts of server and client components, setting you on the path to mastering modern web development.
Why Learn Next.js?
As the tech industry seeks skilled professionals, mastering Next.js puts you at the forefront of opportunity. Whether you're starting a new career as a software engineer or looking to enhance your current projects, there's never been a better time to dive into Next.js.
What Will You Achieve?
Through an extensive collection of video lectures, detailed diagrams, and real-world examples, this course ensures a thorough understanding of Next.js, even if you're new to the framework. The learning experience is designed to be both rigorous and encouraging, building knowledge step-by-step and contextualizing each feature of Next.js.
This course promises the most comprehensive exploration of Next.js available online. Every aspect is covered in this resource-rich adventure.
Course Topics:
Server vs. Client Components: Understand and leverage each for maximum efficiency.
Data Validation Techniques: Ensure the reliability and integrity of user input.
Caching Systems: Navigate Next.js's sophisticated caching systems for optimal performance.
Server Actions for Data Mutations: Structure server actions effectively to handle data changes.
Styling with Tailwind CSS: Enhance user interfaces with component styling.
TypeScript Integration: Leverage TypeScript for robust, type-safe applications.
User Authentication with Next-Auth: Implement secure and scalable user management.
Modern Components with shadcn: Styling a modern touch with shadcn.
Form Handling with Zod: Learn to handle form and actions with zod.
With each topic, you'll gain the knowledge, proficiency, and confidence to apply what you've learned in practical scenarios.
Who Is This Course For?
This course is ideal for any engineer looking to build high-performance web apps with Next.js. Basic knowledge of React and TypeScript is helpful.
Learning Pattern
We will adopt a project-based approach to learning, which will allow us to practice what we have learned in real-world settings. This method will enable us to learn quickly and retain the knowledge, preparing us for larger projects in the future.
Embrace the Future of Web Development
Join the ranks of developers who not only follow best practices but also contribute to them. Sign up now to transform your understanding and execution of modern web development with Next.js.
*Course will be updated to Next.js v15 when a stable version is available.