shipzy
Open source · early preview

Your own Vercel, in your own AWS account.

shipzy deploys React and Next.js sites to S3 and CloudFront in your AWS account, with instant rollbacks, preview URLs, custom domains and push-to-deploy. No servers of ours in the middle, and you pay AWS directly.

$npm install -g shipzy
Get started How it works
Runs in your accountLeast-privilege accessNo telemetryApache-2.0
01 · How it works

From zero to live in three commands

Everything is created in your AWS account, and you can see all of it in the AWS console.

01

Connect your AWS

One command creates the buckets, the CDN and the build project. It takes about five minutes, once.

# uses your AWS profile
$ shipzy init
02

Deploy a project

Build on your machine or inside your account. Every deploy is stored as an immutable copy.

$ shipzy deploy ./my-app
# or build in AWS
$ shipzy deploy ./my-app --remote
03

Go live, go back

Pointing the site at a different deploy takes effect at the edge in about 30 seconds.

$ shipzy rollback -p my-app
# or let every push deploy
$ shipzy github connect -p my-app
02 · What you get

The parts of Vercel you actually use

Deploys, previews, domains, rollbacks and environment variables, running on infrastructure you own.

01

Deploy from anywhere you work

A folder on your laptop, a build in your own AWS account, or a pasted GitHub link. Same result each time.

02

Push to deploy

Connect a repository once. Every push to the branch builds and goes live, with no CI to set up.

03

Preview every pull request

Each PR gets its own URL, rebuilt on every push and removed when the PR closes, with a comment on the PR.

04

Instant rollback

Every deploy is an immutable copy. Going back is a single small update, not a rebuild.

05

Custom domains with HTTPS

Certificate, distribution and DNS are created for you when the domain is in Route 53. Otherwise you get the exact records to add.

06

Encrypted environment variables

Build-time variables are stored encrypted in your account, with separate production and preview values.

07

React and static Next.js

Vite, Create React App, and Next.js with output: export. Pages, dynamic routes and a real 404 all work.

08

An address for every project

Each project gets its own CloudFront link on its first deploy, so any number of sites can be live at once.

09

An optional dashboard

A web UI that runs on your own computer: deploy, roll back, manage domains and variables, follow build logs.

03 · Where it runs

Nothing runs on our servers

shipzy is a command-line tool on your machine and a set of resources in your AWS account. We never see your code, your keys or your traffic.

YOUR AWS ACCOUNTYouCLI or dashboardGitHubpush or pull requestS3 bucketevery deploy, immutableCloudFrontedge router + routing tableLambdawebhook + publishCodeBuildbuilds in your accountVisitorsover HTTPSdeploypushbuilduploadreads

Immutable deploys

Each deploy is a new folder in S3. Nothing is overwritten, so a bad release never destroys the good one.

A routing table at the edge

CloudFront looks up which deploy a hostname should serve. Promote and rollback are one small write.

Builds in your account

CodeBuild runs your install and build, so GitHub deploys need no CI of their own and no secrets outside AWS.

Read how it works in detail →
04 · The dashboard

A calm place to see everything

Prefer clicking to typing? shipzy dashboard opens a web UI that runs on your own computer. It does exactly what the CLI does, because it runs the CLI.

Deployfrom a folder or pick a GitHub repository
Roll backmanage domains and variables, and follow build logs live
Optionala separate download; the CLI works fully without it
Privateit only listens on your own machine
The overview: every project, its live address and its last deploy.The overview: every project, its live address and its last deploy.
The overview: every project, its live address and its last deploy.
05 · Safety

Built so you do not have to trust us

The safest design is one where we never hold anything worth stealing. A few of the choices that follow from that:

Your account only

No shipzy servers, no accounts, no telemetry. The code runs on your machine and in your AWS.

Least privilege

A ready-made IAM policy limits the CLI to resources named for the stack. Download and read it.

Secrets stay secret

Tokens and variables go in encrypted stores, never in command lines or logs, and are never shown back.

Local dashboard

Bound to 127.0.0.1 with a per-launch token, a host check and same-origin checks.

Read the full security model →
06 · Cost

You pay AWS, and nothing on top

No per-seat pricing and no markup. Small sites mostly fit inside AWS free allowances. Estimates are based on AWS list prices at the time of writing, and the cost page shows the arithmetic and where shipzy is not the cheapest option.

See the full breakdown →
Your situationTypical monthly bill
A few small sites, light traffic$1–2per month
A team of five, previews on every PR$2–5no per-seat fee
A busy site, 10 TB of traffic a month~$700AWS bandwidth

Ship your first site in about ten minutes

Install the CLI, run one command to set up your account, and deploy.

$ npm install -g shipzy
$ shipzy init
$ shipzy deploy ./my-app
# ✔ Live: https://my-app.example.com