# Projects (/projects)



## What a project owns [#what-a-project-owns]

A project is one product: one repository, one team, and one set of environments. From day one it is a working full-stack web product with real infrastructure, auth, a workspace to build in, and a clear path to ship.

The project page keeps all of it in one place instead of scattered across separate tools, under **Overview**, **Deployments**, **Workspaces**, **Variables**, **Users**, and **Settings**.

* **Code**: The repository, its branches, and one branch per workspace.
* **[Runtime](/deployments/)**: Lite and full deployments, their DNS, and running URLs.
* **[Access](/iam/)**: Project members and their roles, plus the [sign-in users](/auth/) of the product itself.
* **[Configuration](/environment-variables/)**: Project and per-deployment variables.
* **[Capabilities](/integrations/)**: Managed integrations.

<Accordions>
  <Accordion title="Under the hood: what a project tracks">
    A project is the top-level object Crucible manages. It stores the generated or imported repository, provisioning state, deployments, workspaces, auth membership, and standard API integrations for one product.
  </Accordion>
</Accordions>

## Build and ship are separate [#build-and-ship-are-separate]

A **workspace** is where you and your agents change the product. A **deployment** is where users depend on it. Keeping them separate lets the team move quickly without publishing work in progress.

| Criterion         | [Workspace](/workspaces/)                                              | [Deployment](/deployments/)                                                                                                 |
| ----------------- | ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| Who it serves     | You and your agents                                                    | Your users                                                                                                                  |
| What changes it   | Anything: edits, agent runs, debugging                                 | Only what you ship to its branch                                                                                            |
| Why it matters    | Experiment freely while the live project stays untouched               | Day-to-day building, however messy, never risks the live product                                                            |
| Reach for it when | You are implementing, reviewing, or trying something before it's ready | The change is merged and ready for users                                                                                    |
| Kinds             | Each workspace works on its own branch                                 | [Lite](/deployments/lite-deployment/) for previews and early projects; [full](/deployments/full-deployment/) for production |
