Deploy Next.js apps to a VPS, AWS Lambda, or Cloudflare Workers from one config file and one command. Open source, self-hosted, no vendor lock-in.
curl -fsSL https://nextdeploy.org/install.sh | bashWindows: download install.bat from https://nextdeploy.org/install.bat.
nextdeploy init # scaffold nextdeploy.yml in your Next.js repo
nextdeploy plan # show what will happen, change nothing
nextdeploy ship # build + push + deploy to your target
nextdeploy logs -f # tail production logsnextdeploy.yml holds everything — target type, domain, server, secrets
provider. See sample.nextdeploy.yml in this repo for the full schema.
| Target | Status | What it gives you |
|---|---|---|
| VPS | stable | Caddy + the nextdeployd daemon over SSH |
| AWS | stable | Lambda + S3 + CloudFront, full SSR/ISR/image opt |
| Cloudflare | beta | Workers + R2 + KV via the nextcompile adapter |
git clone https://github.com/aynaash/NextDeploy
cd NextDeploy
go build -o nextdeploy ./cliRequires Go 1.25+. The release binaries on GitHub are built with
GoReleaser; see .goreleaser.yml.
cli/ Cobra CLI entry, all top-level commands
daemon/ nextdeployd — the agent that runs on each VPS
shared/nextcompile/ Build-time compiler + JS runtime for CF Workers
shared/nextcore/ Next.js project introspection (config, routes, deps)
cli/internal/serverless/ AWS adapter (Lambda, S3, CloudFront, ACM)
sample.nextdeploy.yml Annotated reference config
- Full docs: https://nextdeploy.org/docs
- Sample config:
sample.nextdeploy.yml - Each command also has
nextdeploy <cmd> explainfor inline help
Issues and PRs welcome. Run go test ./... before pushing — the release
pipeline is gated on a green test run. For larger changes, open an issue
first so we can align on direction.
MIT — see LICENSE.
