The command can be used to build a project of type \char`\"{}application\char`\"{} or \char`\"{}library\char`\"{}. When used to build a library, a different builder is invoked, and only the {\ttfamily ts-\/config}, {\ttfamily configuration}, and {\ttfamily watch} options are applied. All other options apply only to building applications.

The application builder uses the \href{https://webpack.js.org/}{\texttt{ webpack}} build tool, with default configuration options specified in the workspace configuration file ({\ttfamily angular.\+json}) or with a named alternative configuration. A \char`\"{}production\char`\"{} configuration is created by default when you use the CLI to create the project, and you can use that configuration by specifying the {\ttfamily -\/-\/configuration=\char`\"{}production\char`\"{}} or the {\ttfamily -\/-\/prod=\char`\"{}true\char`\"{}} option.

The configuration options generally correspond to the command options. You can override individual configuration defaults by specifying the corresponding options on the command line. The command can accept option names given in either dash-\/case or camel\+Case. Note that in the configuration file, you must specify names in camel\+Case.

Some additional options can only be set through the configuration file, either by direct editing or with the {\ttfamily ng config} command. These include {\ttfamily assets}, {\ttfamily styles}, and {\ttfamily scripts} objects that provide runtime-\/global resources to include in the project. Resources in CSS, such as images and fonts, are automatically written and fingerprinted at the root of the output folder.

For further details, see \href{guide/workspace-config}{\texttt{ Workspace Configuration}}. 