Supported CRA Features
Modular apps and ESM Views are compatible with a subset of features from Create React App:
Templates
Template support is integrated in the modular add
command. Although Modular templates work in a similar way to Create React App templates, they implement templating in a different context (different types of packages that live in the same repository) and they are not compatible with CRA templates.
Proxies
Local development proxies are supported, but esbuild mode doesn’t support the package.json
proxy
field. The more flexible manual proxy configration is supported in both Webpack and esbuild mode.
Importing CSS / CSS Modules
Importing CSS stylesheets in Modular apps and ESM Views works in the same way as in Create React App.
CSS Modules are also supported, but only in Webpack mode - imported classes are always undefined
in esbuild mode.
All stylesheets are autoprefixed by default.
Importing assets
Importing assets in source files is supported exactly as in Create React App. Assets in the public folder are supported in Modular applications, but not in Modular ESM Views.
Environment variables
Injection of NODE_ENV
and environment variables starting with REACT_APP
at build-time, support for .env
files, and injection of environment variables in the index.html
file (only for Modular Apps) work exactly as in Create React App.