Senate

Projects

Organize services into logical groups

Projects

Projects help you organize related services into logical groups. Use projects to manage multi-service applications or separate environments.

Overview

A project is a simple grouping mechanism:

  • Services can belong to one project
  • Projects have no effect on networking or deployment
  • Purely organizational—filter and view services by project

Projects overview

Creating a Project

  1. Navigate to Projects
  2. Click New Project
  3. Enter project details:
FieldDescriptionRequired
NameProject nameYes
DescriptionOptional descriptionNo
  1. Click Create

Project Structure

A typical project might contain:

my-webapp/
├── frontend     (Next.js app)
├── backend      (Node.js API)
├── database     (PostgreSQL)
├── cache        (Redis)
└── worker       (Background jobs)

Assigning Services to Projects

When Creating a Service

  1. In the New Service form
  2. Select a project from the dropdown
  3. Create the service

For Existing Services

Currently, project assignment is set at creation time. To change a service's project, you would need to recreate the service.

Viewing Project Services

  1. Go to Projects
  2. Click on a project
  3. See all services in that project

Or from the Services page, filter by project.

Use Cases

Multi-Service Applications

Group all services for a single application:

  • Frontend and backend
  • API gateway
  • Databases
  • Caches
  • Message queues

Environment Separation

Create projects per environment:

  • myapp-development
  • myapp-staging
  • myapp-production

Client/Team Organization

For agencies or multi-tenant setups:

  • client-a
  • client-b
  • internal-tools

Project Navigation

When viewing a service that belongs to a project:

  • Sidebar shows project context
  • Quick navigation to other project services
  • Back button returns to project view

Managing Projects

Edit Project

  1. Go to Projects
  2. Click project menu (⋮)
  3. Select Edit
  4. Update name or description
  5. Save

Delete Project

  1. Go to Projects
  2. Click project menu (⋮)
  3. Select Delete
  4. Confirm deletion

Deleting a project does not delete its services. Services become unassigned.

Best Practices

Naming Conventions

Use consistent naming:

{app}-{environment}
{client}-{app}
{team}-{service-group}

Service Naming Within Projects

Include the project context:

myapp-frontend
myapp-api
myapp-db

Or keep names generic (project provides context):

frontend
api
db

Project vs Machines

ConceptPurpose
ProjectLogical grouping, organization
MachinePhysical deployment target

Services in the same project can run on different machines.

Future Features

Planned project enhancements:

  • Bulk operations (deploy all, stop all)
  • Project-level environment variables
  • Project dashboards with aggregated metrics
  • Export/import project configurations

On this page