Full-Stack Transition: Project-Based Front-End Development with React for Backend Developers

Master modern front-end development with React, building real-world projects to seamlessly transition from backend to a full-stack engineering role.

Setting Up Your Modern Front-End Development Environment

Unit 1: Essential Tools for Front-End Development

Unit 2: Rapid Development with Vite

Unit 3: Code Quality and Consistency

HTML5 Fundamentals: Structuring Web Content Semantically

Unit 1: The Foundation of Web Content

Unit 2: Semantic Structure and Organization

Unit 3: Content Types and Media

Accessibility Basics: Making Web Content Inclusive

Unit 1: Foundations of Web Accessibility

Unit 2: ARIA Attributes and Roles

Unit 3: Keyboard Navigation and Focus Management

Unit 4: Media Accessibility

CSS Core Concepts: Styling Your First Web Page

Unit 1: Getting Started with CSS

Unit 2: Targeting Elements with Selectors

Unit 3: Styling Content and Layout

Unit 4: Organizing Your Styles

Advanced CSS Layouts with Flexbox

Unit 1: Flexbox Fundamentals: The One-Dimensional Layout

Unit 2: Aligning and Justifying Flex Items

Unit 3: Controlling Flex Item Sizing and Order

Unit 4: Practical Flexbox Applications

Building Complex Layouts with CSS Grid

Unit 1: Grid Fundamentals

Unit 2: Advanced Grid Techniques

Unit 3: Real-World Grid Applications

Responsive Design Principles: Adapting to Any Device

Unit 1: Foundations of Responsive Design

Unit 2: Mastering Media Queries

Unit 3: Fluid Units and Typography

Unit 4: Responsive Images and Media

Unit 5: Responsive Design Strategies

JavaScript ES2023+ Fundamentals: The Interactive Web

Unit 1: JavaScript Building Blocks

Unit 2: Controlling Program Flow

Unit 3: Functions and Scope

Unit 4: Modern JavaScript Features

Asynchronous JavaScript: Promises and Async/Await

Unit 1: Understanding Asynchronicity

Unit 2: Mastering Promises

Unit 3: Simplifying with Async/Await

Unit 4: Practical Asynchronous Patterns

JavaScript Modules and Tooling

Unit 1: ES Modules: The Foundation

Unit 2: Module Bundling and Optimization

Unit 3: Module Best Practices

Introduction to React: Components and JSX

Unit 1: React Fundamentals

Unit 2: Setting Up Your First React Project

Unit 3: Building with Components and JSX

Unit 4: Data Flow: Props and State

React State Management with useState

Unit 1: Introducing Component State

Unit 2: State Updates and React's Flow

Unit 3: Managing Different State Types

Unit 4: Sharing State Across Components

React Lifecycle and Side Effects with useEffect

Unit 1: Understanding Side Effects

Unit 2: Basic useEffect Usage

Unit 3: Controlling Effect Execution

Unit 4: Cleaning Up Side Effects

Unit 5: Advanced useEffect Patterns

Handling Events and User Interaction in React

Unit 1: React Event Fundamentals

Unit 2: Advanced Event Handling Patterns

Conditional Rendering and List Rendering in React

Unit 1: Conditional Rendering Techniques

Unit 2: List Rendering in React

React Router DOM: Client-Side Routing

Unit 1: Introduction to Client-Side Routing

Unit 2: Defining and Navigating Routes

Unit 3: Advanced Routing Patterns

Unit 4: Route Configuration and Best Practices

Advanced React Hooks: useContext and useReducer

Unit 1: Beyond Local State: The Need for Global State

Unit 2: Mastering useContext for Global Data

Unit 3: Predictable State with useReducer

Unit 4: Choosing the Right Tool

Form Handling with React Hook Form

Unit 1: Getting Started with React Hook Form

Unit 2: Input Registration and Validation

Unit 3: Advanced Form State and Features

Schema Validation with Zod

Unit 1: Zod Fundamentals

Unit 2: Schema Refinements and Transformations

Unit 3: Zod with React Hook Form

Styling React Components: CSS Modules and Styled Components

Unit 1: Component-Scoped Styling with CSS Modules

Unit 2: Dynamic Styling with Styled Components

Unit 3: Best Practices and Comparison

Integrating with RESTful APIs: Data Fetching Basics

Unit 1: Understanding APIs and HTTP

Unit 2: Basic Data Fetching with Fetch API

Unit 3: Enhanced Data Fetching with Axios

Unit 4: Common API Interaction Challenges

Advanced Data Fetching with TanStack Query (React Query)

Unit 1: Introduction to Server State Management

Unit 2: Declarative Data Fetching with useQuery

Unit 3: Data Mutations with useMutation

Unit 4: Advanced TanStack Query Patterns

Handling Data Submission and Error Management

Unit 1: Submitting Data to the Backend

Unit 2: Robust Error Handling

Unit 3: Centralized Error & Auth Management

Integrating with GraphQL Endpoints

Unit 1: GraphQL Fundamentals for React Developers

Unit 2: Integrating Apollo Client with React

Unit 3: Advanced GraphQL Client Concepts

Optimizing React Performance

Unit 1: Understanding React Re-renders

Unit 2: Memoization Techniques

Unit 3: Debugging Performance

Introduction to Testing React Components with Vitest

Unit 1: Testing Fundamentals

Unit 2: Getting Started with Vitest

Unit 3: Unit Testing JavaScript Logic

Testing React Components with React Testing Library

Unit 1: RTL Fundamentals: Testing User Behavior

Unit 2: Simulating User Interactions and Assertions

Unit 3: Advanced RTL Techniques

Mocking APIs and Asynchronous Operations in Tests

Unit 1: Understanding Test Isolation and Mocking

Unit 2: Vitest's Built-in Mocking

Unit 3: Network Request Interception with MSW

Unit 4: Handling Asynchronous States in Tests

Building a Portfolio Site: Project 1 Application

Unit 1: Project Kick-off and Planning

Unit 2: Core Structure and Navigation

Unit 3: Content Sections and Styling

Unit 4: Interactivity and Polish

Developing the Frontend for a Team Task Manager: Project 2 Application

Unit 1: Project Setup and Core Structure

Unit 2: Task Management Features

Unit 3: User Management and Interactions

Unit 4: Advanced Features and Refinements