v1 — invite open

Deploy a SvelteKit app at *.21mv.com in 60 seconds.

Tar your project, POST to one endpoint, get a live HTTPS URL with its own Postgres database, mail proxy, and a local LLM you can ping at 127.0.0.1:11434.

~/my-site
$ tar -czf my-site.tgz .
$ curl -X POST https://deploy.21mv.com/api/v1/deploy \
    -H "Authorization: Bearer dp_…" \
    -F "name=my-site" \
    -F "[email protected]"

{"url": "https://my-site.21mv.com"}

What you get

Everything a real app needs. Nothing you have to wire up yourself.

Instant HTTPS

Auto-provisioned wildcard cert. Your subdomain is live, secure, and CDN-fronted before your terminal prompt returns.

Per-app Postgres

Each deploy gets a real, isolated database. DATABASE_URL is injected into your container — no setup, no quotas.

Mail proxy

POST to /api/v1/mail/send with the same key. We send through verified domains. Zero DNS work for you.

Local LLM

A Gemma 2B model on 127.0.0.1:11434 in every container. Build chatbots without touching an API budget.

Subdomain you pick

morning-glory-bakery.21mv.com, tigers-soccer.21mv.com — letters and dashes, your call.

No vendor lock-in

It is a tarball + Dockerfile + Nginx. Open-source platform code. Take your data and walk away anytime.

How it works

Four steps. About a minute.

  1. 01

    Sign up

    Email + password or one-click Google. Get a dp_… key.

  2. 02

    Build

    SvelteKit + Tailwind v4 + Node 20. Use our skill or your own.

  3. 03

    Tar + POST

    tar -czf … && curl -F file=@… One endpoint, one key.

  4. 04

    Live

    HTTPS URL, Postgres, mail proxy, LLM. Send the link.

For kids and weekend builders

Walk down your street. Find an ugly site. Rebuild it. Email the owner.

We packaged the whole pattern as a kilocode skill (works with free models). Drop it in, paste a URL, and the AI scrapes the existing site, picks a niche-appropriate aesthetic, builds 25 SvelteKit pages with the real business data, and deploys to your subdomain.

Stop yak-shaving deploy infrastructure.

Free to start. Pay only when you outgrow the included resources.