create-react-app README

The project's README from github.com/react/create-react-app. As one markdown file: README.md.

Create React App Build & Test PRs Welcome

[!CAUTION]

Deprecated

Create React App was one of the key tools for getting a React project up-and-running in 2017-2021, it is now in long-term stasis and we recommend that you migrate to one of React frameworks documented on Start a New React Project.

If you are following a tutorial to learn React, there is still value in continuing your tutorial, but we do not recommend starting production apps based on Create React App.

Logo

Create React apps with no build configuration.

Create React App works on macOS, Windows, and Linux.
If something doesn’t work, please file an issue.
If you have questions or need help, please ask in GitHub Discussions.

Quick Overview

npx create-react-app my-app
cd my-app
npm start

If you've previously installed create-react-app globally via npm install -g create-react-app, we recommend you uninstall the package using npm uninstall -g create-react-app or yarn global remove create-react-app to ensure that npx always uses the latest version.

(npx comes with npm 5.2+ and higher, see instructions for older npm versions)

Then open http://localhost:3000/ to see your app.
When you’re ready to deploy to production, create a minified bundle with npm run build.

npm start

Get Started Immediately

You don’t need to install or configure tools like webpack or Babel.
They are preconfigured and hidden so that you can focus on the code.

Create a project, and you’re good to go.

Creating an App

You’ll need to have Node 14.0.0 or later version on your local development machine (but it’s not required on the server). We recommend using the latest LTS version. You can use nvm (macOS/Linux) or nvm-windows to switch Node versions between different projects.

To create a new app, you may choose one of the following methods:

npx

npx create-react-app my-app

(npx is a package runner tool that comes with npm 5.2+ and higher, see instructions for older npm versions)

npm

npm init react-app my-app

npm init <initializer> is available in npm 6+

Yarn

yarn create react-app my-app

yarn create <starter-kit-package> is available in Yarn 0.25+

It will create a directory called my-app inside the current folder.
Inside that directory, it will generate the initial project structure and install the transitive dependencies:

my-app
├── README.md
├── node_modules
├── package.json
├── .gitignore
├── public
│   ├── favicon.ico
│   ├── index.html
│   └── manifest.json
└── src
    ├── App.css
    ├── App.js
    ├── App.test.js
    ├── index.css
    ├── index.js
    ├── logo.svg
    └── serviceWorker.js
    └── setupTests.js

No configuration or complicated folder structures, only the files you need to build your app.
Once the installation is done, you can open your project folder:

cd my-app

Inside the newly created project, you can run some built-in commands:

npm start or yarn start

Runs the app in development mode.
Open http://localhost:3000 to view it in the browser.

The page will automatically reload if you make changes to the code.
You will see the build errors and lint warnings in the console.

Build errors

npm test or yarn test

Runs the test watcher in an interactive mode.
By default, runs tests related to files changed since the last commit.

Read more about testing.

npm run build or yarn build

Builds the app for production to the build folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.

Your app is ready to be deployed.

User Guide

You can find detailed instructions on using Create React App and many tips in its documentation.

How to Update to New Versions?

Please refer to the User Guide for this and other information.

Philosophy

What’s Included?

Your environment will have everything you need to build a modern single-page React app:

Check out this guide for an overview of how these tools fit together.

The tradeoff is that these tools are preconfigured to work in a specific way. If your project needs more customization, you can "eject" and customize it, but then you will need to maintain this configuration.

Create React App is a great fit for:

Here are a few common cases where you might want to try something else:

All of the above tools can work with little to no configuration.

If you prefer configuring the build yourself, follow this guide.

React Native

Looking for something similar, but for React Native?
Check out Expo CLI.

Contributing

We'd love to have your helping hand on create-react-app! See CONTRIBUTING.md for more information on what we're looking for and how to get started.

Supporting Create React App

Create React App is a community maintained project and all contributors are volunteers. If you'd like to support the future development of Create React App then please consider donating to our Open Collective.

Credits

This project exists thanks to all the people who contribute.

Thanks to Netlify for hosting our documentation.

Acknowledgements

We are grateful to the authors of existing related projects for their ideas and collaboration:

License

Create React App is open source software licensed as MIT. The Create React App logo is licensed under a Creative Commons Attribution 4.0 International license.

create-react-app (react/create-react-app)

Searching Database…

这是什么?Create React App 是一个命令行工具,可以搭建新的 React 单页应用,无需任何构建配置,并已为你预先配置好 webpack、Babel、ESLint 和测试运行器。
它是框架还是命令行生成器?它是一个命令行脚手架工具,而不是框架:它会生成一个项目文件夹,其中包含 React 以及用于 start、build、test 的脚本,并隐藏 webpack/Babel 的配置。
我该如何用它创建新应用?可以用 npx、npm init 或 yarn create 来运行它(例如 'npx create-react-app my-app'),这会生成一个 'my-app' 文件夹,其中包含项目结构,并已安装好依赖。然后在项目内运行 'npm start'、'npm test' 和 'npm run build'。
使用它之前需要先安装什么?需要 Node.js 14.0.0 或更高版本(npx 随 npm 5.2+ 一同提供);推荐使用最新的 LTS 版 Node.js,nvm/nvm-windows 可以帮助你为每个项目管理不同的版本。
它现在还适合用来开始新项目吗?不适合。该项目已被弃用,并处于长期停止维护的状态;维护者现在建议迁移到 React 框架,而不是用它来开始新的生产应用。
它现在还适合哪些人使用?主要适用于学习 React 或快速搭建单页示例;README 中提到,尽管不应再用它开始生产应用,但用它继续学习教程仍然有价值。
在 Mac、Windows 和 Linux 上的表现一样吗?是的,在这三个平台上的表现完全一致。
如果需要,我能自定义隐藏的 webpack/Babel 配置吗?可以。你可以执行一次 'eject' 命令,把所有配置和构建依赖直接复制到项目中,之后就需要自己维护它们。
我应该考虑哪些替代方案?对于服务端渲染或静态网站,README 推荐 Next.js、Gatsby 或 Razzle;对于与后端模板框架集成,建议使用 nwb 或 Neutrino;对于 React Native,则推荐 Expo CLI。
开箱即用的功能有哪些?支持 JSX、ES6、TypeScript 和 Flow 语法,自动补全 CSS 浏览器前缀,带覆盖率统计的单元测试运行器,实时开发服务器,带哈希值和源码映射的生产构建脚本,以及可选启用的离线优先 Service Worker 和 PWA 清单。
Creator
react
Size
24.6 MB
Stars
103.2K
Age
10y
Commits · 90 Days