CODE RUN | OUTLINE | CONTACT |
---|---|---|
How to run | Outline | Contact us |
Different lessons taught in this Reactive Accelerator: React-Next.js Bangla Course by Learn with Sumit, are organized in separate branches with naming convention - [module number].[lesson number]. For example, Module-1 Lesson-1 source code is shared in 1.1 branch. Just switch to a branch and follow the corresponding branch's README file instruction.
Please follow the below instructions to run different branches of this repository in your machine:
-
Login to your GitHub account in your Terminal. If you can't setup and install Git in your machine, kindly follow this tutorial.
-
Clone this repository -
git clone https://github.com/Learn-with-Sumit/rnext.git
-
Go to the cloned project directory
cd rnext
-
Checkout/switch to your desired branch. For example, to switch to branch 1.1 -
git checkout 1.1
-
Follow the corresponding branch's README file instruction to run code.
- 0.1 Reactive Accelerator - Course intro β 06:46 minute
- 0.2 How to enroll in Reactive Accelerator course β 16:50 minute
- 0.3 How to get the most out of Reactive Accelerator course β 15:01 minute
- 0.4 How to submit quizzes in Reactive Accelerator course β 05:43 minute
- 0.5 Platform overview β 11:24 minute
- 0.6 How to deploy your project to Vercel free β 12:26 minute
- 0.7 How to submit Assignments in Reactive Accelerator course β 08:40 minute
- 0.8 How to maintain multiple GitHub remote URLs β 12:26 minute
- 0.9 How to ask for support β 07:30 minute
- 0.10 Git/GitHub Refresher β 01:45:48 hours
- 0.11 JavaScript Refresher β 01:54:48 hours
- 0.12 Tailwind v4 Note - Things to know at firstnew β 24:14 minute
- 0.13 Tailwind CSS Refresher β 01:15:50 hours
- 0.14 Sample Video Test β 00:13 minute
- 0.15 Troubleshoot protected video playing issues β 14:41 minute
Describing the UI 07:35:55
- 1.1 Introduction to React β 49:13 minute
- 1.2 React Installation & Development Environment Setup β 31:12 minute
- 1.3 How React works: Virtual DOM β 29:55 minute
- 1.4 - Basics of React Components: Your first component β 28:08 minute
- 1.5 - Basics of React Components: Importing & Exporting Components β 11:59 minute
- 1.6 - Basics of JSX: React's Markup - Writing Markup with JSX β 18:42 minute
- 1.7 - Basics of JSX: React's Markup - JavaScript in JSX with Curly Braces β 21:00 minute
- 1.8 - Understanding Props - Passing Props to a Component β 38:18 minute
- 1.9 - Conditional Rendering β 29:11 minute
- 1.10 Rendering Lists β 21:59 minute
- 1.11 Pure Components: Keeping Components Pure β 27:33 minute
- 1.12 Understanding Complex React UI β 22:27 minute
- 1.13 Project Tutorial - Tic-Tac-Toe Game β 02:06:18 hours
Adding Interactivity 06:03:26
- 2.1 Responding to Events - Adding Event Handlers β 22:30 minute
- 2.2 Responding to Events - Event Propagation β 26:45 minute
- 2.3 Understanding State: A Component's Memory β 26:13 minute
- 2.4 How state works in React - A deep dive β 18:25 minute
- 2.5 How Rendering works β 14:23 minute
- 2.6 State as a Snapshot β 24:42 minute
- 2.7 Queueing a Series of State Updates β 17:46 minute
- 2.8 Updating Objects in a State β 30:36 minute
- 2.9 Updating Arrays in a State β 42:06 minute
- 2.10 Project Tutorial- Tasker: Streamlining Success with React-Powered Task Management β 02:20:00 hours
Dive 10:15:43
- 3.1 Declarative vs Imperative UI β 16:40 minute
- 3.2 Thinking about UI declaratively in React - Finding Visual States β 25:10 minute
- 3.3 Thinking about UI declaratively in React - Finalize React states & Connect Event Handlers β 26:50 minute
- 3.4 Choosing the State Structure - Group related state β 24:25 minute
- 3.5 Choosing the State Structure - Avoid contradictions in state β 10:42 minute
- 3.6 Choosing the State Structure - Avoid redundant state β 18:24 minute
- 3.7 Choosing the State Structure - Avoid duplication in state β 11:36 minute
- 3.8 Choosing the State Structure - Avoid deeply nested state β 40:11 minute
- 3.9 Sharing State Between Components - Lifting state up β 30:50 minute
- 3.10 Preserving and Resetting State - Default behavior β 32:28 minute
- 3.11 Resetting state at the same position - Changing Default behavior β 23:17 minute
- 3.12 Extracting State Logic into a Reducer - Example project β 38:35 minute
- 3.13 Three steps to Consolidate state logic with a reducer β 26:25 minute
- 3.14 Comparing useState and useReducer - How to write reducers well β 18:35 minute
- 3.15 Writing concise reducers with Immer β 10:04 minute
- 3.16 Passing Data Deeply with Context - Introduction to Context API β 30:40 minute
- 3.17 Using and providing context from the same component β 05:09 minute
- 3.18 Context passes through intermediate components β 18:32 minute
- 3.19 Some notes and use cases for Context β 11:56 minute
- 3.20 Scaling Up with Reducer and Context β 35:42 minute
- 3.21 Project Tutorial - CineRental: Your One-Stop React App for Movie Magic and Rentals β 02:39:32 hours
Escape Hatches 06:28:06
- 4.1 Referencing Values with Refs β 33:54 minute
- 4.2 Manipulating the DOM with Refs - Getting a ref to the node β 32:33 minute
- 4.3 Manipulating the DOM with Refs - Accessing another componentβs DOM nodes β 12:05 minute
- 4.4 Exposing a subset of the API with an imperative handle β 09:11 minute
- 4.5 When React attaches the refs & Best practices for DOM manipulation with refs β 13:05 minute
- 4.6 Flushing state updates synchronously with flushSync β 12:14 minute
- 4.7 Synchronizing with Effects - Overview of Effects vs Events β 10:44 minute
- 4.8 Synchronizing with Effects - How to write an Effect β 52:12 minute
- 4.9 Synchronizing with Effects - Handling effects firing twice in development β 25:29 minute
- 4.10 Synchronizing with Effects - Fetching Data β 30:11 minute
- 4.11 Synchronizing with Effects - Putting it all together in one example β 14:34 minute
- 4.12 You Might Not Need an Effect - Initial three examples β 30:27 minute
- 4.13 You Might Not Need an Effect - Three more examples β 37:46 minute
- 4.14 You Might Not Need an Effect - More examples β 44:57 minute
- 4.15 You Might Not Need an Effect - Fetching data - Avoid Race Condition β 28:44 minute
Escape Hatches 09:12:45
- 4.16 The lifecycle of an Effect β 40:49 minute
- 4.17 Effects react to reactive values β 29:34 minute
- 4.18 Separating Events from Effects - Part 1 β 25:48 minute
- 4.19 Separating Events from Effects - Part 2 β 27:36 minute
- 4.20 Separating Events from Effects - Part 3 β 19:33 minute
- 4.21 Removing Effect Dependencies - Part 1 β 20:29 minute
- 4.22 Removing Effect Dependencies - Part 2 β 39:15 minute
- 4.23 Reusing Logic with Custom Hooks - Part 1 β 35:13 minute
- 4.24 Reusing Logic with Custom Hooks - Part 2 β 19:46 minute
- 4.25 Reusing Logic with Custom Hooks - Part 3 β 16:00 minute
- 4.26 Reusing Logic with Custom Hooks - Part 4 β 12:38 minute
- 4.27 Reusing Logic with Custom Hooks - Part 5 β 29:26 minute
- 4.28 - Performance Optimization β 25:48 minute
- 4.29 - Performance Optimization - More Example β 13:41 minute
- 4.30 Project Tutorial - Real-time Weather Dashboard β 03:17:09 hours
Basics: Ecosystem & Use Cases 11:11:34
- 5.1 React Router v6 Crash Course β 02:10:44 hours
- 5.2 API Request with Axios in React β 01:04:58 hours
- 5.3 React Query Crash Course β 01:51:05 hours
- 5.4 React Hook Form Crash Course β 01:35:33 hours
- 5.5 React Suspense and Error Boundaries Explained β 01:06:55 hours
- 5.6 React Lazy Load explained β 21:43 minute
- 5.7 Animation in React with Framer Motion β 01:32:43 hours
- 5.8 How to do Authentication in React with Firebase β 01:27:53 hours
Basics: Ecosystem & Use Cases 12:17:38
- 5.9 React Infinite Scroll β 39:39 minute
- 5.10 Dive into Uncommon React Hooks β 01:46:04 hours
- 5.11 Styling with React - React Styled Components & CSS Modules β 49:09 minute
- 5.12 React Virtualized β 38:12 minute
- 5.13 React Portal β 57:50 minute
- 5.14 React-redux crash course β 01:37:36 hours
- Project - FaceHook - Part 1 - Project Setup and Routing β 24:36 minute
- Project - FaceHook - Part 2 - Header Fake Log in & Log out β 35:30 minute
- Project - FaceHook - Part 3 - Auth Context Private Route β 23:28 minute
- Project - FaceHook - Part 4 - JWT Implementation β 58:09 minute
- Project - FaceHook - Part 5 - Profile Page Bio and Image β 01:11:49 hours
- Project - FaceHook - Part 6 - Profile Post β 44:22 minute
- Project - FaceHook - Part 7 - Post Feed β 13:40 minute
- Project - FaceHook - Part 8 - New User Registration β 14:10 minute
- Project - FaceHook - Part 9 - Like and Comment Posts β 19:20 minute
- Project - FaceHook - Part 10 - Create, Edit, Delete Posts β 44:04 minute
Mistakes You Must Avoid 02:19:18
- 6.1 Props Drilling and Props Plowing β 07:44 minute
- 6.2 Component Nesting & Huge Components β 05:03 minute
- 6.3 Unwanted parent tags β 05:40 minute
- 6.4 Storing everything as the state β 04:11 minute
- 6.5 Multiple useState, useReducer instead β 05:32 minute
- 6.6 Using the Index as a key in the loop β 05:14 minute
- 6.7 Context over Redux (Putting everything in Redux) β 05:09 minute
- 6.8 Over optimising Performance β 07:11 minute
- 6.9 Introduction to React Anti pattens - the mistakes you must avoid β 02:03 minute
- 6.10 React 19 new Features - What's new in React 19 β 01:31:31 hours
Next.js: Installation & Basic
Routing 06:15:38
- 7.1 Introduction to Next.js β 16:57 minute
- 7.2 Next.js installation & Editor Setup with Tailwind CSS β 13:24 minute
- 7.3 Project Structure β 09:38 minute
- 7.4 Defining Routes β 08:16 minute
- 7.5 Pages and Layouts β 27:22 minute
- 7.6 Linking and Navigating β 44:15 minute
- 7.7 Loading & Streaming β 33:35 minute
- 7.8 Error Handling β 29:34 minute
- 7.9 Route Groups β 12:07 minute
- 7.10 Dynamic Routes β 24:18 minute
- 7.11 Project Tutorial - DocuCraft - Part 1 β 01:33:40 hours
- 7.12 Project Tutorial - DocuCraft - Part 2 β 25:44 minute
- 7.13 Project Tutorial - DocuCraft - Part 3 β 28:49 minute
- 7.2-new Next.js 15 installation issues & note β 07:59 minute
- 8.1 Project Organization & File colocation β 16:23 minute
- 8.2 Parallel Routes β 20:12 minute
- 8.3 Unmatched & Intercepting Routes β 25:10 minute
- 8.4 Combining Parallel & Intercepting Routes β 16:06 minute
- 8.5 Intro to Route Handlers - GET, POST, PATCH, DELETE β 38:46 minute
- 8.6 More with Route Handlers - Headers, cookies, caching & redirecting β 34:28 minute
- 8.7 Middlewares β 34:16 minute
- 8.8 Not found page β 12:11 minute
- 8.9 Internationalization β 34:50 minute
- Project Tutorial - PhotoFeed - Part 1 β 17:00 minute
- Project Tutorial - PhotoFeed - Part 2 β 08:23 minute
- Project Tutorial - PhotoFeed - Part 3 β 26:47 minute
- Project Tutorial - PhotoFeed - Part 4 β 22:46 minute
- Project Tutorial - PhotoFeed - Part 5 β 26:31 minute
Revalidation 04:46:14
- 9.1 Data Fetching - on the server with 'fetch' β 36:32 minute
- 9.2 Data Fetching - on the server & client with third-party libraries & route handlers β 13:18 minute
- 9.3 Server Action - Introduction & Example with MongoDB Database β 39:06 minute
- 9.4 More with Server Action - Different Use Cases β 33:18 minute
- 9.5 Data Fetching Patterns and Best Practices - Sequential & Parallel Data Fetching β 28:16 minute
- 9.6 Caching in Next.js β 27:29 minute
- Project - EcoVista - Part 1 - Intro & Project Setup β 06:23 minute
- Project - EcoVista - Part 2 - API Development β 13:30 minute
- Project - EcoVista - Part 3 - Create Slot Skeletons β 19:38 minute
- Project - EcoVista - Part 4 - Detect Geolocation & Reroute β 13:46 minute
- Project - EcoVista - Part 5 - Slots ready with APIs β 26:30 minute
- Project - EcoVista - Part 6 - Location info switcher β 14:47 minute
- Project - EcoVista - Part 7 - Direct Route β 13:41 minute
Optimizing 06:49:56
- 10.1 Next.js Rendering explained β 29:54 minute
- 10.2 Next.js server vs client component explained β 23:05 minute
- 10.3 Composition Patterns β 37:35 minute
- 10.4 Image Optimization β 45:03 minute
- 10.5 Font Optimization β 21:53 minute
- 10.6 Metadata β 32:16 minute
- 10.7 Static Assets β 04:07 minute
- 10.8 Lazy Loading β 13:01 minute
- 10.9 Third-party Libraries β 10:52 minute
- 10.10 Project Eventry - Part-1 - Introduction & Project Structure β 30:02 minute
- 10.11 Project Eventry - Part-2 - Setting up MongoDB and UI from the data from database β 39:26 minute
- 10.12 Project Eventry - Part-3 - Login, Register Functionality, and Auth Context β 46:26 minute
- 10.13 Project Eventry - Part-4 - Implementing Interested functionality β 21:28 minute
- 10.14 Project Eventry - Part-5 - Implementing Going to event and Send Email functionality β 20:23 minute
- 10.15 Project Eventry - Part-6 - How to Setup Google Event Schema for SEO β 08:07 minute
- 10.16 Project Eventry - Part-7 - How to set up Dynamic Meta Data β 03:38 minute
- 10.17 Project Eventry - Part-8 - How to implement server side search β 11:51 minute
- 10.18 Project Eventry - Part-9 - What is the right way to use Suspense and Image optimization β 10:49 minute
Ecosystem & Use Cases 11:50:58
- Next-auth crash course β 01:02:08 hours
- TypeScript crash course β 01:26:25 hours
- Project StaySwift - Part-1 - Introduction and Component Structure β 32:15 minute
- Project StaySwift - Part-2 - Database setup, data design, Creating schema, model, testing queries β 20:04 minute
- Project StaySwift - Part-3 - Setup Next-Auth Oauth2 with Google. β 49:32 minute
- Project StaySwift - Part-4 - Implement User Registration β 12:52 minute
- Project StaySwift - Part-5 - Show Authenticated User details in Profile. β 05:02 minute
- Project StaySwift - Part-6 - Implement Protected Routes β 06:32 minute
- Project StaySwift - Part-7 - Hotel Listing and Hotel Details from DB data β 28:30 minute
- Project StaySwift - Part-8 - Implementing Search β 47:55 minute
- Project StaySwift - Part-9 - Implement Hotel Booking Functionality β 22:14 minute
- Project StaySwift - Part-10 - Implement My Profile Booking List β 10:29 minute
- Project StaySwift - Part-11 - Implement Hotel Filter Functionality and End Notes β 28:57 minute
- GraphQL - Part 1 - Introduction to GraphQL β 49:46 minute
- GraphQL - Part 2 - Setting up Next.js project, GraphQl CLient, Writintg Queries β 32:31 minute
- GraphQL - Part 3 - Page Header Footer β 09:23 minute
- GraphQL - Part 4 - Post list, latest post, post cards β 28:03 minute
- GraphQL - Part 5 - Post details β 10:36 minute
- GraphQL - Part 6 - Filter posts by Tags, Home Page, and Refrences β 18:36 minute
- Testing and Debugging crash course β 01:12:29 hours
- Prisma Crash Course β 01:16:39 hours
- Development to Deployment 25:05:31
- Project EduConnect - Part-1 - Introduction and Project Overview, Database Design, Pages and Components, Installation, shadcnUi, folder structure β 59:13 minute
- Project EduConnect - Part-2 - Model Creation and Query Testing β 30:39 minute
- Project EduConnect - Part-3 - Home Page, Course List, Explore Now β 01:02:57 hours
- Project EduConnect - Part-4 - Course Details Page β 01:27:36 hours
- Project EduConnect - Part-5 - Register and Become an Instructor, Login β 55:36 minute
- Project EduConnect - Part-6 - Protected route β 35:21 minute
- Project EduConnect - Part-7 - JWT Refresh Token β 52:19 minute
- Project EduConnect - Part-8 - Stripe Integration β 43:52 minute
- Project EduConnect - Part-9 - Enrol and Enrolment Success, Send Email β 01:08:22 hours
- Project EduConnect - Part-10 - Reset Password and Account Update β 59:42 minute
- Project EduConnect - Part-11 - Database Design restructure, Course Details, Calculations β 01:02:28 hours
- Project EduConnect - Part-12 - Dashboard - Features, Analytics, Profile pictures, Avatar Logout β 01:01:05 hours
- Project EduConnect - Part-13 - Dashboard - Course data, Review, Enrolment β 01:06:27 hours
- Project EduConnect - Part-14 - Dashboard - Course create, Meta data updates, Image upload β 01:40:56 hours
- Project EduConnect - Part-15 - Dashboard - Module creation, Reordering of modules β 29:51 minute
- Project EduConnect - Part-16 - Dashboard - Module page, Title update, Lesson added, Reordered, Course page back link β 54:55 minute
- Project EduConnect - Part-17 - Dashboard - Lesson data update, Video, Title, Lesson visibility β 51:38 minute
- Project EduConnect - Part-18 - Lesson publish unpublish delete,β Module publish,β Course publish unpublish delete β 01:05:32 hours
- Project EduConnect - Part-19 - Quizset - Add quiz, Add quizset to course, Course progress and Bugfix β 01:58:07 hours
- Project EduConnect - Part-20 - Lesson page structures, β Links to lesson, β Lesson authz authn guard β 49:45 minute
- Project EduConnect - Part-21 - Lesson side bar actual data, Lesson states maintained, β Lesson unique URL β 55:53 minute
- Project EduConnect - Part-22 - Video player for lesson, Update watch history, state changes on ui on lesson completion β 01:00:12 hours
- Project EduConnect - Part-23 - Report update on lesson and module completion, Show the course completion progress in realtime β 32:56 minute
- Project EduConnect - Part-24 - Certificate Download β 49:11 minute
- Project EduConnect - Part-25 - Quiz Submission and End This Project β 01:30:58 hours