Create React App: Bootstrap React projects without build configuration
Zero-configuration React scaffolding tool with preconfigured toolchain.
Learn more about create-react-app
Create React App is a command-line scaffolding tool that generates preconfigured React project boilerplates with zero manual setup required. It abstracts the complexity of webpack bundling, Babel transpilation, and development server configuration into a single dependency managed through react-scripts. The tool provides a standardized project structure with hot module replacement for development, optimized production builds with code splitting and minification, and integrated testing infrastructure using Jest. Projects created with this toolchain can be ejected to expose the underlying configuration files, allowing developers to customize webpack and Babel settings when needed. The opinionated default configuration prioritizes convention over configuration, trading flexibility for immediate productivity and consistent build tooling across React projects.

Zero configuration approach
Build tools and configuration are preconfigured and hidden from the developer. The generated project contains only application source files and public assets, with tooling abstracted into dependencies.
Integrated development workflow
Includes built-in commands for development (npm start with hot reloading), testing (npm test with watch mode), and production builds (npm run build with minification). No separate tool installation or configuration needed.
Deprecation status
The project entered long-term stasis as of 2021. The maintainers recommend migrating to alternative React frameworks for new production applications, though it remains functional for learning and existing projects.
import React from 'react';
import ReactDOM from 'react-dom/client';
function Welcome() {
return <h1>Hello, React!</h1>;
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<Welcome />);Maintenance release improving React 18 compatibility; templates now use createRoot and version check no longer blocks older CRA installs.
- –Upgrade react-scripts to 5.0.1 with npm install --save --save-exact react-scripts@5.0.1 or yarn add --exact.
- –New projects use React 18's createRoot API; existing projects continue working but consider migrating render calls.
Drops Node 10/12 support and upgrades to webpack 5, Jest 27, ESLint 8, and PostCSS 8; delete node_modules and reinstall after upgrading react-scripts.
- –Upgrade to Node 14+ (LTS) before installing, as Node 10 and 12 are no longer supported.
- –Run npm install --save --save-exact react-scripts@5.0.0 and delete node_modules if errors occur post-upgrade.
Maintenance release fixing ESLint opt-out flag and patching an immer vulnerability; no breaking changes.
- –Upgrade to react-scripts@4.0.3 to fix eslint-webpack-plugin opt-out flag behavior.
- –Update addresses immer vulnerability in react-dev-utils (CVE details not specified in notes).
Related Repositories
Discover similar tools and frameworks used by developers
material-ui
Production-ready React components with comprehensive theming system.
lucide
Framework-agnostic SVG icons with native component packages.
AdminLTE
Production-ready Bootstrap 5 template with SCSS build tooling.
Font-Awesome
Scalable vector icon library with multiple rendering formats.
imgui
Immediate mode GUI library for 3D applications.