> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Configure a project

> Create projects and manage the settings each project needs.

Configure a project before deploying, running jobs, or connecting integrations.

## Steps

1. Create or select a project.
2. Apply a template when the project needs starter resources.
3. Create environments for development, preview, or production.
4. Add variables and secrets for each environment.
5. Review configuration before deployment or runtime work.

## Try it with REST

Create a project:

`POST /projects`

```bash title="Terminal" theme={null}
curl -X POST https://api.veryfront.com/projects \
  -H "Authorization: Bearer $VERYFRONT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Support Assistant",
    "slug": "support-assistant",
    "templateSlug": "blank"
  }'
```

Create a production environment:

`POST /projects/{project_reference}/environments`

```bash title="Terminal" theme={null}
curl -X POST https://api.veryfront.com/projects/support-assistant/environments \
  -H "Authorization: Bearer $VERYFRONT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "production"
  }'
```

## API surfaces

| Surface | Start here                                                                                                                                                                                                  |
| ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| REST    | [Projects](/cloud/rest/api-reference/projects/list-projects), [Create Project](/cloud/rest/api-reference/projects/create-project), [Environments](/cloud/rest/api-reference/environments/list-environments) |
| GraphQL | [Create Project](/cloud/graphql/operations/projects/mutations/createproject), [Create Environment](/cloud/graphql/operations/projects/mutations/createenvironment)                                          |
| MCP     | [Create Project](/cloud/mcp/tools/create-project), [Create Environment](/cloud/mcp/tools/create-environment)                                                                                                |

## Verify

List projects and confirm the project slug exists.

List environments and confirm `production` exists for the project.

## Configuration surfaces

| Surface     | Use it for                                           |
| ----------- | ---------------------------------------------------- |
| Project     | Resource ownership, source, access, logs, and usage. |
| Template    | Starter structure for a project.                     |
| Environment | Variables, secrets, domains, and deployment targets. |

## API reference

| API                       | Use                                       |
| ------------------------- | ----------------------------------------- |
| [REST](/cloud/rest)       | Projects, templates, and environments.    |
| [GraphQL](/cloud/graphql) | Project and environment views.            |
| [MCP](/cloud/mcp)         | Project, template, and environment tools. |
