9d9

Quickstart

Go from a folder of HTML to a live site at slug.9d9.dev in a minute — no account needed until you claim it.

The fastest path is the get-started prompt: paste it into your AI and it does everything below for you. This page is the same flow by hand. Any framework that emits a static folder works — plain HTML, Astro, Next.js static export, Hugo, SvelteKit static.

1. Build a site

npm create astro@latest my-site -- --template minimal --yes
cd my-site
npm install
npm run build

You should now have a dist/ directory with the built site.

2. Deploy it — no account needed

npx @9d9dev/cli deploy ./dist --name "My Site"

With no key configured, the CLI creates the site, saves a deploy key to .9d9.json (and adds it to your .gitignore), and uploads the files. The site stays private until you claim it:

Deploying 13 file(s), 127.2 KB total...
Created My Site → https://my-site.9d9.dev
Saved the deploy key to /home/you/my-site/.9d9.json (keep it; it's how you push updates).
Deploy dep_qXpgSbWcNGfoWy3PxJfE24Ls created.
  10/13
  13/13

Uploaded. Deploy dep_qXpgSbWcNGfoWy3PxJfE24Ls is ready.
  https://my-site.9d9.dev/  (live once claimed)

Not public yet: the site goes live once its owner claims it. They open:
  https://app.9d9.dev/pair?code=FX5A-Y64D
  (claim code FX5A-Y64D, expires Tue Oct 21 2026)

Need the site's org_id before you build (for forms or analytics)? Reserve it first with npx @9d9dev/cli init --name "My Site".

3. Claim it

Open the claim link, enter your email, and click the link we send — you land back on the claim page signed in. Click Claim and publish and it's live. Unclaimed sites are deleted after 7 days. Each network can create one site a day this way; sign in (below) to skip the limit.

4. Push updates

Run npx @9d9dev/cli deploy ./dist again. Each deploy is a new version, swapped in atomically. Old versions stick around for a week (roll back from the Deploys tab or 9d9 deploys list). The deploy key keeps working after you claim the site.

Already have an account?

Create an API key under Settings → New key, then npx @9d9dev/cli set-key ak_xxx --org=org_xxx in your project and deploy as above.

What next?

  • Wire up a contact form and analytics — see Concepts.
  • Let your AI assistant manage the site — see MCP setup.