vapor-cli

The command-line client for Laravel Vapor, the serverless deployment platform for Laravel on AWS Lambda.

Tool
Composer
vv1.70.3
315stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
82/100Excellent
Development Activity76
Maintenance88
Community84
Maturity60
Momentum20

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
79/100Good
Architecture80
Code Quality82
Innovation74
Learning Curve72

laravel/vapor-cli is the official command-line client for Laravel Vapor, an auto-scaling, serverless deployment platform for Laravel applications powered by AWS Lambda. It lets you manage your Vapor-hosted infrastructure and deployments entirely from the terminal.

Through the vapor command you can provision projects and environments, deploy applications, and coordinate the surrounding AWS resources Vapor manages, including SQS queues, databases, Redis clusters, networks, and the CloudFront CDN, without wrestling directly with Lambda’s complexity.

What You Get

  • A vapor command for deploying and managing Laravel apps on Vapor
  • Commands to provision and configure projects, environments, and resources
  • Manifest-driven configuration of deployments and infrastructure
  • Build and packaging steps tailored for serverless Laravel on AWS Lambda
  • Integration with Vapor-managed AWS services like SQS, databases, Redis, and CloudFront

Common Use Cases

  • Deploying a Laravel application to a serverless AWS Lambda environment
  • Managing multiple Vapor environments (staging, production) from CI or a terminal
  • Provisioning databases, caches, and queues that back a Vapor-hosted app
  • Automating serverless deployments within a Laravel team’s release pipeline

Under The Hood

Architecture - vapor-cli is a Symfony Console application bootstrapped from the executable vapor script, which builds an Illuminate Container and registers Commands. Command classes under src/Commands drive workflows via a ConsoleVaporClient (a Guzzle-based API client), a Manifest reader, and BuildProcess/Docker helpers that package the application, with AWS S3 uploads handled through league/flysystem.

Tech Stack - PHP ^7.2|^8.0 with ext-zip. It leans on Illuminate components (container, filesystem, support), Symfony Console/Process/Yaml, Guzzle, league/flysystem plus the AWS S3 adapter, ramsey/uuid, and vlucas/phpdotenv. PHPStan and PHPUnit cover static analysis and testing.

Code Quality - The source is organized into clear domains (Commands, BuildProcess, Aws, Models, Solutions), ships a tests directory run under PHPUnit, and enforces static analysis via phpstan.neon, reflecting the maintenance standards of a first-party Laravel package.

API Design - As a CLI, its developer experience centers on discoverable, well-named subcommands and a declarative project manifest, so deploying is largely a matter of running vapor deploy after configuring the manifest, hiding the underlying AWS orchestration.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search