01 / Create
Declare the site
The server reserves a slug like bright-canvas-a7k2 and returns signed upload URLs.
Open-source here.now alternative
Tell your agent “publish this” and get a live URL in seconds. Your server, your domain, your storage.
One command
How it works
Create, upload, finalize. A site goes live only when finalize succeeds, so nobody ever sees a half-uploaded page.
01 / Create
The server reserves a slug like bright-canvas-a7k2 and returns signed upload URLs.
02 / Upload
Bytes go straight to your storage over presigned URLs. They never pass through the server.
03 / Finalize
One atomic switch publishes the version. Every version is kept, so rollback is a pointer flip.
Self-host
Pick where it runs. Every path serves the same sites from storage you control.
Auth model
One bearer key guards publishing. You generate it. No accounts, no hosted control plane, no telemetry. Nothing phones home.
{slug}.your-domain with wildcard DNS.Included
Every publish is immutable. Roll back to any of them.
Lock a site behind a password with one flag.
Set a TTL. Anonymous publishes expire in 24 hours.
SPA fallback, custom 404.html, and directory listings.
Correct application/wasm plus COOP and COEP headers.
Claude, Cursor, and other agents can publish to your instance.
FAQ
ownnow publishes a file or folder to a live URL on your own domain. It is one Go binary that runs on your server and keeps files in your storage. It is open source under the MIT license.
here.now is a hosted service. ownnow is software you run yourself, with no accounts, no hosted control plane, and no telemetry. Some here.now features, like email allowlists, analytics, and teams, are not built yet.
Yes. The repo ships an agent skill for Claude, Cursor, and other agents. Set OWNNOW_SERVER and OWNNOW_API_KEY, then tell your agent “publish this”.
The software is free. You pay for your own server and bandwidth. On Cloudflare, R2 has no egress fees and the serving Worker fits the free tier.
Static files: HTML sites, images, PDFs, and any other file type. Single-page apps, custom 404 pages, and Wasm games work. ownnow does not run server-side code.
For public sites, yes. Point an A record at your server and Caddy handles TLS. Add wildcard DNS to give every site its own subdomain. For local work, the single binary runs on localhost.
Publish again with the same slug to create a new version. Every version is kept, so a rollback switches back to an old one without uploading anything.
Anyone with your API key, and no one else. Without a key, the server runs in anonymous mode: sites expire after 24 hours and a claim token guards updates.