Quick Start

Go from zero to deployed in under a minute.

1

Install the CLI

Terminal
curl -fsSL https://shipyard.wtf/install | sh
2

Log in

Authenticate with your Shipyard account. This opens a browser window where you sign in via Privy (Google, MetaMask, or WalletConnect) and copy an API token back to the terminal.

Terminal
shipyard login

# Or specify a custom API server:
shipyard --api-url http://localhost:3001 login
3

Initialize your project

Navigate to your project directory. Shipyard will detect the framework and create a shipyard.json config file.

Terminal
cd my-astro-app
shipyard init

# Output:
#   Detected framework: astro
#   Project name: my-astro-app
#   Created project on Shipyard
#   Wrote shipyard.json
4

Deploy

Build and deploy your app. Shipyard runs your build command, packages the output, uploads it to S3, and provisions a machine.

Terminal
shipyard deploy

# Output:
#   Building with `pnpm build`...
#   Packaging artifact (2.4 MB)...
#   Uploading to S3...
#   Provisioning Fly Machine (iad)...
#   ✓ Deployed! https://xk9m2p.shipyard.wtf
5

Go to production

When you're happy with the preview, promote to production:

Terminal
shipyard deploy --prod

# Or promote an existing deployment:
shipyard promote xk9m2p

Your app is now live at https://my-astro-app.shipyard.wtf.

What just happened?

  1. The CLI ran pnpm build (or your framework's build command)
  2. The output directory was compressed into a .tar.gz with a SHA-256 hash
  3. The artifact was uploaded to S3 storage via a presigned URL from the API
  4. A deployment record was created in the database
  5. A Fly.io Machine was provisioned with the right runtime image
  6. Caddy assigned a unique subdomain with automatic TLS

Next steps