Cette page est affichée en anglais. Une traduction française est en cours.
ScriptsMay 29, 2026·3 min de lecture

Create React App — Zero-Config React Project Scaffolding

The official scaffolding tool for React applications. Generates a pre-configured project with Webpack, Babel, ESLint, and a dev server so you can start coding immediately without touching build config.

Prêt pour agents

Installation agent prête

Cet actif peut être installé après choix du runtime, vérification du plan et exécution de la commande adaptée.

Native · 98/100Policy : autoriser
Surface agent
Tout agent MCP/CLI
Type
Skill
Installation
Single
Confiance
Confiance : Established
Point d'entrée
Create React App Overview
Commande d'installation directe
npx -y tokrepo@latest install a4c1ed13-5b7a-11f1-9bc6-00163e2b0d79 --target codex

À exécuter après confirmation du plan en dry-run.

Introduction

Create React App (CRA) is an officially supported way to create single-page React applications. It offers a zero-configuration setup that bundles Webpack, Babel, ESLint, and a development server into a single dependency, letting developers focus on writing React code instead of managing build tooling.

What Create React App Does

  • Generates a complete React project structure with a single command
  • Bundles Webpack, Babel, and PostCSS behind a single react-scripts dependency
  • Provides a fast-refresh development server with hot module replacement
  • Includes a production build pipeline that minifies, hashes, and code-splits automatically
  • Supports TypeScript, CSS Modules, environment variables, and service workers out of the box

Architecture Overview

CRA wraps all build configuration inside the react-scripts package. Running npm start launches a Webpack dev server with Babel transpilation and Fast Refresh enabled. Running npm run build produces an optimized static bundle in the build/ directory. The design hides config files from the project root; running npm run eject copies all configuration into the project for manual control, but this is a one-way operation.

Self-Hosting & Configuration

  • No installation beyond Node.js 14+ is required; npx fetches the latest version on-the-fly
  • Environment variables prefixed with REACT_APP_ are embedded at build time via Webpack DefinePlugin
  • Proxy API requests during development by adding a proxy field to package.json
  • TypeScript support is activated by passing --template typescript during project creation
  • Custom configuration without ejecting is possible through tools like CRACO or react-app-rewired

Key Features

  • True zero-config: no Webpack, Babel, or ESLint files to maintain
  • Fast Refresh for near-instant feedback during development
  • Automatic code splitting via dynamic import() statements
  • Built-in testing setup with Jest and React Testing Library
  • PWA support with a generated service worker and web app manifest

Comparison with Similar Tools

  • Vite — significantly faster dev server using native ES modules; CRA relies on Webpack bundling
  • Next.js — adds server-side rendering, API routes, and file-based routing; CRA is client-side only
  • Parcel — zero-config bundler that can scaffold React projects with less tooling opinion
  • Turbopack — Webpack successor promising faster builds; still maturing compared to CRA's stable ecosystem

FAQ

Q: Is Create React App still maintained? A: The repository is in maintenance mode. The React team recommends frameworks like Next.js or Remix for new projects, but CRA remains functional for client-only SPAs.

Q: Can I add server-side rendering to a CRA project? A: CRA does not support SSR natively. You would need to eject or migrate to a framework like Next.js for SSR capabilities.

Q: What does ejecting do? A: Ejecting copies all hidden Webpack, Babel, and ESLint configuration files into your project, giving you full control but removing the ability to receive future react-scripts updates.

Q: How do I customize the build without ejecting? A: Tools like CRACO and react-app-rewired let you override CRA's internal Webpack and Babel config without ejecting.

Sources

Fil de discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires