Skip to main content
A project is the top-level organizational unit in Springwinter. Every resource you deploy — web servers, workers, static websites, caches, databases, and storage buckets — lives inside a project. Projects share a hostname suffix, an AWS connection, and access permissions with your team, making it easy to keep related services together and manage them as a unit.

What a Project Contains

Each project can hold any combination of the following resource types:
  • Web servers — containerized HTTP services with a public URL, running on ECS.
  • Workers — background ECS processes with no public URL.
  • Static websites — files built from GitHub and served via S3 + CloudFront.
  • Caches — Valkey (Redis-compatible) instances running in your AWS account.
  • Databases — PostgreSQL or MySQL instances managed by AWS RDS.
  • Storage buckets — private S3 buckets with metrics and cost tracking.
All resources inside a project share the same AWS account connection and are visible to every team member with access to that project.

Hostname Suffix

Every project has a hostname suffix that Springwinter appends to resources by default when generating their public URLs. For example, if your suffix is acme.springwinter.app, a web server named api would receive the URL api.acme.springwinter.app. You can update the hostname suffix at any time using the API:
Changing the hostname suffix updates the URLs of all resources in the project. Make sure to update any DNS records, environment variables, or external integrations that reference the old URLs before making this change.

Enabling HTTPS

Springwinter can provision an AWS Certificate Manager (ACM) certificate for your project’s load balancer, enabling HTTPS for all web servers in the project. To enable HTTPS, send a request to the certificate endpoint:
Springwinter requests the certificate from ACM and attaches it to the project load balancer automatically. To disable HTTPS and remove the certificate:
ACM certificate provisioning requires DNS validation. Springwinter will provide the CNAME records you need to add to your DNS provider. The certificate becomes active once DNS validation completes.

Creating a Project

1

Open the dashboard

Sign in at springwinter.dev and navigate to the main dashboard.
2

Click New Project

Select New Project in the top-right corner of the projects list.
3

Name your project

Enter a name for your project. The name is used to generate the default hostname suffix and must be unique within your account.
4

Confirm creation

Click Create Project. Springwinter provisions the project and takes you to the project overview, where you can start adding resources.

Deleting a Project

You can only delete a project that contains no resources. Before deleting, remove all web servers, workers, static websites, caches, databases, and storage buckets from the project. Once the project is empty, send:
Deleting a project is permanent. Any project-level settings, hostname suffix configuration, and ACM certificates are removed immediately and cannot be recovered.

API Reference

The following endpoints let you manage projects programmatically. All requests require an Authorization: Bearer <token> header or an active cookie session with a CSRF token.