Core JavaScript Fundamentals (Pre-requisite)
Skill Set: Strong JavaScript ES6+ skills, DOM manipulation, asynchronous programming.
Knowledge/Understand: Closures, promises, async/await, modules, event handling.
Usage Level: Must know before starting React.
Skill Set: Create functional/class components, use JSX, manage props and state.
Knowledge/Understand: Component lifecycle, Virtual DOM, re-rendering process.
Usage Level: Beginner → Intermediate.
Important Topics:
Components (Functional vs Class)
JSX Syntax
Props and State
Conditional Rendering
Lists & Keys
React Hooks
Skill Set: Use built-in hooks (useState, useEffect, useContext, etc.).
Knowledge/Understand: How hooks replace lifecycle methods, custom hooks.
Usage Level: Intermediate → Advanced.
Important Topics:
useState, useEffect
useContext
useReducer
useRef
Skill Set: Manage complex state across components.
Knowledge/Understand: Context API, Redux, Zustand, Recoil, or MobX.
Usage Level: Advanced for large-scale apps.
Important Topics:
Context API
Redux (actions, reducers, store)
Redux Toolkit
Skill Set: Navigate between pages using React Router.
Knowledge/Understand: Nested routes, dynamic routing, protected routes.
Usage Level: Intermediate.
Important Topics:
react-router-dom basics
Route parameters
Redirects and Navigation
Skill Set: Apply different styling methods in React.
Knowledge/Understand: CSS-in-JS, Styled Components, Tailwind CSS.
Usage Level: Beginner → Advanced (depending on project scale).
Important Topics:
Inline styles
CSS Modules
Styled-components
TailwindCSS
Skill Set: Build forms, handle inputs, validate data.
Knowledge/Understand: Controlled vs Uncontrolled components.
Usage Level: Intermediate.
Important Topics:
Controlled Inputs
Formik / React Hook Form
Client-side validation
Skill Set: Improve rendering performance.
Knowledge/Understand: Memoization, code splitting, lazy loading.
Usage Level: Advanced.
Important Topics:
React.memo, useMemo, useCallback
Lazy loading with React.lazy & Suspense
Skill Set: Write unit and integration tests.
Knowledge/Understand: Jest, React Testing Library, Cypress.
Usage Level: Advanced (for production apps).
Important Topics:
Snapshot Testing
Unit Testing Components
Mocking API Calls
Skill Set: Understand React ecosystem tools and libraries.
Knowledge/Understand: SSR, SSG, Next.js, React Native.
Usage Level: Advanced.
Important Topics:
Next.js (Server-Side Rendering, Static Site Generation)
React Native for mobile apps
GraphQL with Apollo
