Skip to content

shalithadev/rightmo-react-fundamentals

Repository files navigation

📚 React.js + Next.js Training Outline (11 Days)

This program is designed to give developers a deep dive into React.js and Next.js, from JavaScript essentials and React internals (JSX, Virtual DOM, Fiber, Reconciliation, Lifecycle) to TypeScript, build tools, and advanced Next.js features.


Day 01: Introduction to React & Ecosystem

  • What is React?
    • Origins, evolution & Meta’s role
    • Why React? The problem with direct DOM manipulation
  • When to choose React?
    • SPAs, dashboards, UI-heavy apps
    • Strengths vs Angular, Vue, Svelte
  • React Ecosystem overview
    • React DOM, React Native
    • State management (Context, Redux, Zustand)
    • Styling (Tailwind, CSS Modules, styled-components)
    • Developer tools (React DevTools, VSCode extensions)

Day 02: JavaScript Advanced Refresher

  • ES6+ Essentials (let, const, arrow functions, template literals)
  • Objects & Arrays deep dive (map, filter, reduce, find)
  • Spread/rest operators & destructuring
  • Asynchronous JavaScript (Promises, async/await, fetch API)
  • Closures, scopes, modules (import/export)

Day 03: React Core Concepts (Part 1)

  • JSX and React Elements
    • Writing HTML-like code in JS
    • JSX → transpiled by Babel → React.createElement()
    • React elements = plain JS objects (lightweight descriptions of UI)
  • Rendering Basics
    • How React renders elements into the DOM (ReactDOM.createRoot)
  • Components
    • Function components (preferred) vs Class components
    • Props → passing and validating props
  • Hands-on: Simple counter app (JSX, props, rendering)

Day 04: React Core Concepts (Part 2)

  • State & Events
    • useState basics, updating state correctly
    • Event handling in React
  • Virtual DOM
    • Concept of Virtual DOM as a lightweight JS representation
    • How React updates the Virtual DOM before touching the real DOM
  • Reconciliation (Fiber Architecture)
    • Diffing algorithm → comparing old vs new trees
    • Efficient updates using Fiber scheduling
  • Hands-on: Todo List app (state + list rendering)

Day 05: React Lifecycle & Hooks

  • Rendering & Committing
    • How React batches DOM updates
    • The commit phase → minimal real DOM updates
  • Component Lifecycle
    • Mounting, updating, unmounting
    • Why lifecycle matters for performance
  • Hooks
    • useEffect for side effects (fetch, subscriptions, cleanup)
    • Custom hooks for reusable logic
  • Hands-on: API Fetch + cleanup example with useEffect

Day 06: TypeScript Basics in React

  • Why TypeScript? Benefits for React projects
  • Primitive types & type inference
  • Interfaces & type aliases
  • Union & intersection types
  • Typing React props & state (basic examples)
  • Hands-on: Refactor Todo List with TypeScript types

Day 07: TypeScript Advanced for React

  • Generics (functions & components)
  • Utility types (Partial, Pick, Omit, Record)
  • Type narrowing & guards
  • Typing hooks (useState, useReducer)
  • Typing custom hooks
  • Hands-on: Build a typed API fetcher hook

Day 08: Compilers & Build Tools

  • Why compilers/transpilers are needed (JSX, ESNext)
  • Babel
    • JSX → JS transformation (React.createElement)
    • ESNext → ES5 transpilation
  • Webpack
    • Entry, output, loaders, plugins
    • Dev vs Prod builds
  • Modern alternatives: Vite, SWC, ESBuild
  • Demo: Minimal React + Webpack config

Day 09: Next.js (App Router – Routing Deep Dive)

  • Page Router vs App Router (legacy vs modern)
  • App Router fundamentals
    • app/ directory
    • Server vs Client Components
  • File-based Routing System
    • page.tsx, layouts (layout.tsx), nested routes
    • Dynamic routes ([id]/page.tsx)
    • Catch-all routes ([...slug])
  • Hands-on: Create a multipage Next.js app with nested layouts

Day 10: Next.js – Rendering Models & Data Fetching

  • Rendering strategies
    • CSR → Client-Side Rendering (default React)
    • SSR → Server-Side Rendering
    • SSG → Static Site Generation
    • ISR → Incremental Static Regeneration
  • Data fetching in App Router
    • fetch() in Server Components
    • generateStaticParams
    • Combining SSR & SSG
  • Hands-on: Blog app mixing static posts + dynamic user data

Day 11: Next.js APIs, Deployment & Final Project

  • API Routes in App Router (app/api/route.ts)
    • Route Handlers (GET, POST, PUT, DELETE)
    • Edge runtime basics
  • SEO & Metadata (metadata object, head.js)
  • Image & font optimization (next/image, next/font)
  • Deployment options
    • Vercel (1-click deploy)
    • Self-hosting basics
  • Final Project: Full blog app with dynamic routes, API integration & deployed to Vercel

✅ Learning Outcomes

By the end of this program, developers will:

  • Understand how React works internally (JSX, Virtual DOM, Fiber, reconciliation, commit phase)
  • Build reusable, efficient components with hooks & lifecycle awareness
  • Write strongly-typed React apps with TypeScript
  • Understand compilers/build tools like Babel, Webpack, Vite
  • Master the Next.js App Router, routing, SSR/CSR/SSG/ISR
  • Build, optimize, and deploy a real-world Next.js application

About

React Fundamentals for Beginnners

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •