Declarative Deployments

Deploy like infrastructure.
Ship like a pro.

Declarative deployments from a single YAML file. Plan changes, review them, then apply.

shipper.yml
providers:
ploi:
server_id: "105556"
projects:
api:
provider: ploi
profiles:
production:
branch: main
domain: "api.example.com"
databases:
main:
name: "myapp_production"
staging:
branch: develop
domain: "api.example-test.com"
databases:
main:
name: "myapp_staging"
Terminal
$ composer global require shippercli/cli
$ shipper plan api --profile=production
+ Create site api.example.com
+ Configure SSL (Let's Encrypt)
+ Link database myapp_production
+ Deploy from main branch
$ shipper apply api --profile=production
✓ All resources applied successfully

Everything you need to ship

Provider Agnostic

Ploi, Forge, EasyPanel, cPanel, and more. One config, any provider.

Plan & Apply

Preview changes before deploying. No surprises.

Database Lifecycle

Create, link, and manage databases automatically.

PR Previews

Spin up preview environments for every pull request.

GitHub Actions

CI/CD out of the box. Deploy on push or PR.

Config Validation

Catch misconfigurations before they hit production.

Ready to ship?

$ composer global require shippercli/cli