Create React App is deprecated. What now?

Also searched as: Create React App deprecated alternative · Create React App is deprecated, what to use instead · Is Create React App obsolete · npx create-react-app deprecated · Create React App deprecated date

Updated 3 October 2026

Short answer

Your app doesn't stop working. Create React App continues in maintenance mode, but it has no active maintainers, and the React team deprecated it on 14 February 2025. They encourage existing apps to migrate to a framework, or to a build tool such as Vite, Parcel or RSBuild. For an app that's only a React frontend, moving to Vite is usually the smaller step: mostly configuration, not a rewrite.

What's the problem

Your app was started with Create React App (react-scripts). Now you see deprecation warnings, npm audit reports problems in its dependencies, builds fail on newer Node versions, or a developer tells you it all needs replacing. You want to know how urgent it is and what it involves.

Why it happens

  • Nobody is actively maintaining it. Create React App bundled a fixed set of build tools. With no active maintainers, those tools fall further behind every month.
  • Its dependencies age. Old build tools bring old packages with published vulnerabilities, and conflicts with newer libraries.
  • It hides its configuration. Everything lived inside react-scripts, so moving away means setting up a few things CRA used to do for you.

How to fix it

Moving a typical CRA app to Vite:

  1. Do it on a branch and keep the old setup working until the new one passes your tests.
  2. Install Vite and its React plugin, and add a small vite.config.js.
  3. Move index.html from public/ to the project root, and add a script tag that loads your entry file (usually src/index.jsx).
  4. Rename environment variables. CRA reads variables starting REACT_APP_ from process.env. Vite reads variables starting VITE_ from import.meta.env. Update both the names and the code that reads them.
  5. Update the scripts in package.json (dev, build, preview) and remove react-scripts.
  6. Fix what the build reports: usually file extensions (JSX in .js files), SVG imports and absolute import paths.
  7. Update your hosting. The build output folder changes (Vite outputs to dist instead of build), and so do the environment variable names.
  8. Test every main flow, then deploy.

When to call Preventionlabs

If the app is small and the build passes after these steps, you're done. Call us when the CRA app is also years behind on React, routing and everything else, and the migration turns into untangling all of it at once. A resurrection delivers an app that builds and starts on maintained dependencies, deployed in your own hosting account, with the user flows you list working end to end.

Submit your project for a free assessment

Free assessment. $10,000 AUD flat to get it live, only if we take it on and you go ahead.

Sources

  1. React: Sunsetting Create React App (14 February 2025)official blogToday, we’re deprecating Create React App for new apps, and encouraging existing apps to migrate to a framework, or to migrate to a build tool like Vite, Parcel, or RSBuild.
  2. React: Sunsetting Create React App (14 February 2025)official blogHowever, since Create React App currently has no active maintainers, and there are many existing frameworks that solve these problems already, we’ve decided to deprecate Create React App.
  3. React: Sunsetting Create React App (14 February 2025)official blogCreate React App will continue working in maintenance mode, and we’ve published a new version of Create React App to work with React 19.
  4. Create React App: Adding Custom Environment Variablesofficial docsBy default you will have NODE_ENV defined for you, and any other environment variables starting with REACT_APP_.
  5. Vite: Getting Started: index.html and Project Rootbuild tool docsOne thing you may have noticed is that in a Vite project, index.html is front-and-central instead of being tucked away inside public.
  6. Vite: Build Options: build.outDirbuild tool docsDefault: dist Specify the output directory (relative to project root).
  7. Create React App: Deploymentofficial docsnpm run build creates a build directory with a production build of your app.
← All of It used to work