One of the most powerful features of Stacks is its built-in cloud deployment pipeline. Instead of wrestling with Terraform, CDK, or manual AWS console clicks, you can deploy your entire application — API, frontend, docs, and blog — with a single command.

The Problem with Cloud Deployment

Most teams spend weeks setting up their deployment pipelines. You need to configure CloudFormation or Terraform templates, set up CI/CD, manage SSL certificates, configure CloudFront distributions, and handle database migrations. It's tedious and error-prone.

How Stacks Solves It

With Stacks, your cloud infrastructure is defined in a simple TypeScript configuration file:

// config/cloud.ts
export const tsCloud = {
  project: { name: 'my-app', region: 'us-east-1' },
  infrastructure: {
    compute: { instances: 1, size: 'small' },
    storage: {
      public: { website: { indexDocument: 'index.html' } },
      docs: { website: { indexDocument: 'index.html' } },
    },
    ssl: { enabled: true, domains: ['myapp.com', 'docs.myapp.com'] },
    dns: { domain: 'myapp.com' },
  },
}

Then deploy everything:

./buddy deploy --yes

What Happens Under the Hood

When you run ./buddy deploy, Stacks:

  • Generates a CloudFormation template from your config
  • Provisions EC2 instances with your Bun application
  • Creates S3 buckets for static sites (frontend, docs, blog)
  • Sets up CloudFront distributions with SSL certificates
  • Configures Route53 DNS records
  • Runs database migrations on the remote server
  • Uploads static assets to S3 with proper cache headers
  • Invalidates CloudFront caches for instant updates

All of this happens automatically, with progress output so you know exactly what's happening.

Zero-Downtime Updates

Subsequent deployments are incremental. Stacks detects what changed and only updates the necessary resources. Your users never experience downtime.

Try It Yourself

If you have an AWS account, you can deploy a Stacks app in under 10 minutes. Check out our deployment guide to get started.