> For the complete documentation index, see [llms.txt](https://academy.shade.inc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://academy.shade.inc/guides/custom-objects-and-metadata/create-a-folder-for-every-new-project.md).

# Create a folder for every new project

Adding a project record builds the project's folder structure from a template automatically.

**Outcome:** when someone adds a record to your **Projects** object, Shade creates `Projects/<project name>` with your standard folder structure inside it. Folders stay consistent and nobody builds them by hand.

**Who it's for:** teams that track projects as custom objects and start new projects often.

**Time:** about 10 minutes.

## Before you start

* Set up a **Projects** object. See [Model projects and clients as custom objects](/guides/custom-objects-and-metadata/model-projects-and-clients-as-custom-objects.md).
* Save your project folder structure as a folder template. See [Folder Templates](https://academy.shade.inc/workspaces-and-drives/folder-templates).
* Build [Your first automation](/guides/automations/your-first-automation.md) first if you haven't used the automation editor.

## Steps

{% stepper %}
{% step %}

### Trigger on new project records

Create an automation named `New project folders`. Choose **Record Created** and set **Object type** to **Projects**.
{% endstep %}

{% step %}

### Create the folder from your template

Add **Create folder**:

* **Path:** type `Projects/`, then type `{` and choose the record's **name** from the trigger.
* **Folder template:** your project template. Shade builds the template's folders inside the new folder.
  {% endstep %}

{% step %}

### Optional: share it with the team

Add **Send Email** to tell the producer the folder is ready, or **Generate Folder Share Link** if a client needs an upload link on day one.
{% endstep %}

{% step %}

### Save, activate, and test

Click **Save**, then **Activate**. Add a test record in **Projects** and check that its folder appears under `Projects`.
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
Project names become folder names, so they can't contain `/`. Agree on a naming pattern, such as `2026-03 ACME Spring Campaign`, so folders sort sensibly.
{% endhint %}

## Variations

* **Group by client:** use **Get Record** to look up the project's client, and build the path as `Clients/<client name>/<project name>`.
* **Start from another tool:** create the folder from a webhook sent by your project tracker. See [Connect Shade to other tools with webhooks](/guides/automations/connect-shade-to-other-tools-with-webhooks.md).

## Related guides

* [Model projects and clients as custom objects](/guides/custom-objects-and-metadata/model-projects-and-clients-as-custom-objects.md)
* [Auto-organize new uploads](/guides/automations/auto-organize-new-uploads.md)
* [Set up an agency workspace](/guides/setup-and-migration/set-up-an-agency-workspace.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://academy.shade.inc/guides/custom-objects-and-metadata/create-a-folder-for-every-new-project.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
