Skip to main content

Welcome to React Learn

This learning resource is designed to take you from TypeScript fundamentals to building interactive React applications. Through two comprehensive sections, you’ll gain practical experience with modern web development tools and techniques.

What You’ll Learn

This course is structured into two main sections that build upon each other:

TypeScript Fundamentals

Master ES6+ features and TypeScript essentials needed for React development

React Basics

Build interactive components with hooks, state management, and modern React patterns

TypeScript Fundamentals

The first section (01-reforzamientoTs) covers essential JavaScript and TypeScript concepts:
  • Variables and Constants: Understanding let, const, and type annotations
  • Template Strings: Modern string interpolation techniques
  • Object Literals: Working with typed objects and interfaces
  • Arrays and Functions: Functional programming with TypeScript
  • Destructuring: Object and array destructuring patterns
  • Import/Export: Module system and code organization
  • Async Operations: Promises, async/await, and the Fetch API
The TypeScript fundamentals section uses Vite for fast development and hot module replacement (HMR).

React Basics

The second section (02-primeros-pasos) introduces React development with practical examples:
  • Component Creation: Functional components with TypeScript
  • JSX Syntax: Writing declarative UI with type safety
  • Props and Interfaces: Typed component props
  • State Management: Using the useState hook
  • Event Handling: Interactive user interfaces
  • Conditional Rendering: Dynamic UI based on state
  • List Rendering: Mapping arrays to components
  • CSS Modules: Scoped styling with TypeScript support
The React section includes a complete shopping cart example with the ItemCounter component demonstrating state management and event handling.

Key Features

Real-World Examples

Every concept is demonstrated with practical, runnable code examples:
// TypeScript function with interfaces
interface User {
  uid: string;
  username: string;
}

function getUser(): User {
  return {
    uid: '112d',
    username: 'angelosgd',
  }
}

Interactive Components

Build real React components from the start:
export const ItemCounter = ({ name, quantity }: Props) => {
  const [count, setCount] = useState(Number)

  const handleAdd = () => {
    setCount(count + 1)
  }

  return (
    <section>
      <span>{name}</span>
      <button onClick={handleAdd}>+1</button>
      <span>{count}</span>
    </section>
  )
}

Modern Tooling

  • Vite: Lightning-fast build tool with HMR
  • TypeScript: Full type safety and IntelliSense
  • ESLint: Code quality and consistency
  • Vitest: Testing with React Testing Library
  • CSS Modules: Scoped styling

Learning Outcomes

By completing this course, you’ll be able to:
  • Write type-safe JavaScript with TypeScript
  • Understand modern JavaScript features (ES6+)
  • Create functional React components with hooks
  • Manage component state and handle user interactions
  • Structure React applications with proper TypeScript typing
  • Use modern development tools and workflows
  • Apply best practices for component composition
Make sure you have Node.js (v16 or higher) installed before starting. You’ll need it to run the development servers.

Ready to Start?

Head over to the Setup Guide to configure your development environment and begin your journey into React development.

Build docs developers (and LLMs) love