# Build

> The Build activity compiles the code into a NuGet package. The project referenced by the `project.json` is packaged into a NuGet package with the version set to the version parameter. The resulting `.nupkg` is saved in the local robot runtime folder. It is typically placed inside the [Stage Activity](https://docs.uipath.com/activities/other/latest/workflow/stage-activity).

## Description

The Build activity compiles the code into a NuGet package. The project referenced by the `project.json` is packaged into a NuGet package with the version set to the version parameter. The resulting `.nupkg` is saved in the local robot runtime folder. It is typically placed inside the [Stage Activity](https://docs.uipath.com/activities/other/latest/workflow/stage-activity).

## Project compatibility

****Windows** | **Cross-platform****

## Configuration

#### Designer panel

* **Repository path** - The path to the local clone of the repository. Typically output from [Clone](https://docs.uipath.com/activities/other/latest/workflow/clone-activity).
* **Project path** - (Optional) The path of the `project.json` file relative to Repository path. Typically provided by Automation Ops through Default arguments. If not provided, defaults to `project.json`.

#### Properties panel

**Common**
* **Continue on error** - (Optional) Specifies if the automation should continue even when the activity throws an error. This field only supports `Boolean` values (**True**, **False**). The default value is **False**. As a result, if the field is blank and an error is thrown, the execution of the project stops. If the value is set to **True**, the execution of the project continues regardless of any error.

**Input**
* **Version** - (Optional) The package version. If not provided, it defaults to the version in `project.json`. The valid format of the version is `major.minor.build.revision`. The revision and build are optional (for example, 1.2 or 1.2.3 or 1.2.3.4).
* **Author** - (Optional) The author to be set on the package. If not provided, it is set to the account the automation runs under.
* **Repository type** - (Optional) The used source control type (such as git, svn, uip etc.).
* **Repository URL** - (Optional) The remote repository URL of the `project.json` file.
* **Repository branch** - (Optional) The source branch for the package.
* **Repository commit** - (Optional) The commit ID (the commit SHA for git repositories).
* **Include sources** - (Optional) Sets whether the automation source code is packed as well. Default value is **False**.
* **Separate runtime dependencies** - Enables the output split to runtime and design libraries.
* **Skip validation** - (Optional) Skips project validation. The default value is **Off** (the validation is performed).

**Output**
* **NuGet Package path** - The absolute path to the built package.
