> For the complete documentation index, see [llms.txt](https://docs.brainboard.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.brainboard.co/data/data-structure/environments.md).

# Environment

### Description

An <mark style="color:$primary;">**`environment`**</mark> is a logical grouping of cloud architectures that are supposed to have the same criticality or serve the same purpose. Like dev, staging, QA, prod…

Environments can be used to separate and <mark style="color:$primary;">**`isolate`**</mark> development, staging, and production resources, or to create dedicated environments for different teams or applications.

{% hint style="info" %}
Brainboard environments provide a flexible and powerful way to manage your cloud infrastructure. It is like a folder; you can put any logic that reflects your processes.
{% endhint %}

### Create a new environment

You can define or create a new environment in the following two ways:

1. While creating a new project
2. While editing a new project

{% hint style="info" %}

* Multiple new environments can be defined at a time.
  {% endhint %}

## Predefined Environments

The following environments are already predefined in <mark style="color:$primary;">**Brainboard**</mark> for you to select from when creating a new project or assigning an environment to a project in project edit mode.

* Production
* Staging
* Test
* QA
* Sandbox
* UAT

<figure><img src="https://2733077811-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7YhVIZuz5Brv8kisTlFL%2Fuploads%2F5AxijyrFYaYfk71qrrhP%2Fpre-defined-env.png?alt=media&amp;token=070d42c8-0703-4464-ba4c-47eb113e3564" alt="" width="528"><figcaption></figcaption></figure>

### Creating a new environment in the New Project Details modal

1. To define a new environment at the time of new project creation, either go to <mark style="color:$primary;">**Settings > Projects**</mark> or simply click <mark style="color:$primary;">**Projects**</mark> in the left menu.
2. Click the <mark style="color:$primary;">**`Create project`**</mark> button.
3. Type in the new environment name that you want to create in the <mark style="color:$primary;">**`Environments`**</mark> field.

<figure><img src="https://2733077811-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7YhVIZuz5Brv8kisTlFL%2Fuploads%2FTh7Q68u5CL7wr0fc5gb5%2Fnew-enviroment-new-project.png?alt=media&amp;token=24b2b2da-6488-405a-9518-8a5a841b93b1" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Project environments are scoped to the individual project in which they are created. As a result, an environment defined for one project cannot be shared across multiple projects.
{% endhint %}

### Creating a new environment in the Edit Project Details modal

1. To define a new environment at the time of editing a project, click <mark style="color:$primary;">**Settings**</mark> in the left menu.
2. Then click <mark style="color:$primary;">**Projects**</mark>**.**
3. Click the **ellipses icon (three dots)** next to the project you want to define a new environment for.
4. Select <mark style="color:$primary;">**Edit project details**</mark> from the dropdown list.
5. Type in the new environment name that you want to create in the <mark style="color:$primary;">**`Environments`**</mark> field.

<figure><img src="https://2733077811-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7YhVIZuz5Brv8kisTlFL%2Fuploads%2FgiYFUAhAqZ32TfrNDNdP%2Fcreate-env-edit-proj.png?alt=media&amp;token=d79990d5-1238-48cc-8f99-0defc0733c47" alt=""><figcaption></figcaption></figure>

### Delete environment

To delete an environment other than the predefined environments, simply open the project in edit mode and click the **cross icon&#x20;**<mark style="color:$primary;">**`(x)`**</mark> on the **environment name** that you want to delete.

{% hint style="warning" %}
Pre-defined environments cannot be deleted.
{% endhint %}

<figure><img src="https://2733077811-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7YhVIZuz5Brv8kisTlFL%2Fuploads%2F9MwRchudpHINdpJ2xiG4%2Fdelete-env.png?alt=media&amp;token=93fc0d78-a453-4baf-a069-4946c6a36473" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
Deleting an environment will delete all architectures inside it. This action cannot be undone.

Therefore, you will be prompted with a confirmation message if there is an architecture associated with the environment you wish to delete.
{% endhint %}

### Synchronize architectures across environments

Refer to the [Architecture Synchronization](/data/data-structure/cloud-architecture/synced-architectures.md) to know more about it.

By following these steps, you can effectively manage multiple environments in <mark style="color:$primary;">**Brainboard**</mark> and ensure that your infrastructure is consistent and reliable across all stages. This is the best way to eliminate the drift between different environments.
