build
Builds the project for production.
npx frontity build [options]
Option | Description |
Builds the project. Create bundles with "es5", "module" or "both". Default target is "both". Related environment variable: FRONTITY_BUILD_TARGET | |
Set the public path for static assets. Default path is "/static/". Related environment variable: FRONTITY_BUILD_PUBLIC_PATH | |
--help | Output usage information |
Examples
- Builds the project for production using an external domain
https://external-domain.com/static
as the path for static files
npx frontity build --public-path="https://external-domain.com/static"
This flag correspond to webpack’s mode parameter so it will run webpack in the development mode as described there.
For example, when running react in development mode (when
process.env.NODE_ENV
is set to development
and NOT to production
) you get full error messages and warnings from React but at the cost of slower performance.npx frontity build --development
So, it’s basically the same as just running
frontity dev
except that it will only build the project once
and will not run the development server.The target option allows to decide what features will be transpiled with babel.
With
--target es5
, the support of the following browsers as the minimum is:es5: {
browsers: [
"and_chr >= 67",
"and_ff >= 18",
"and_uc >= 11.8",
"android >= 67",
"not android <= 4.4.4",
"chrome >= 49",
"edge >= 12",
"firefox >= 18",
"ios_saf >= 10",
"not op_mini all",
"op_mob >= 46",
"opera >= 36",
"safari >= 10",
"samsung >= 5",
],
},
So, Frontity don't transpile any features that those browsers already support. In particular Frontity aim to support only the browsers that ship with the built-in
Proxy
object . This list comes from here and it is used by the @babel/preset-env to determine how to transpile the files.By default Frontity will look for static assets in the path
<YOUR-DOMAIN>/static
With the
--public-path
option you can change the path from where you are serving the statics assets (i.e. js chunk files, fonts, images, etc.)In case some people need to change it (because of constrains in their site architecture) they would need an option to do so just before generating the Frontity bundle with
npx frontity build
.Example:
npx frontity build --public-path="/other/folder"
Create bundles with
es5
, module
or both
. Default target is both
.If detected, and no
--target
option is defined for build
Frontity command, this environment variable will be applied.Example:
FRONTITY_BUILD_TARGET=module
FRONTITY_BUILD_TARGET=es
Frontity by default builds the server in "production mode". Setting this variable makes it run in "development mode" (with disabled optimizations, etc.)
Example:
FRONTITY_BUILD_DEVELOPMENT=true
Set the public path for static assets. Default path is
/static/
.If detected, and no
--public-path
flag is defined for build
Frontity command, this environment variable value will be applied.Example:
FRONTITY_BUILD_PUBLIC_PATH=/assets/
Last modified 2yr ago