Acme Corp
/v/acmeFractional-CTO engagement. Strategy reviews, migration plans, and the security work — all gated to their team.
Open source · Self-hosted on Cloudflare · MIT
Publish an HTML or Markdown artifact to a real URL and decide who can open it. Runs on your own Cloudflare account, on the free tier. Whoever you send it to installs nothing.
Free. Yours. No account for your reader, no seat for you.
The everyday version
Drive won't render it. Email mangles it. Slack strips it. A public link is all-or-nothing, and the "just zip it" version ends with someone opening report.html in Notepad.
Markdown has most of the same problem. It is what your AI hands you by default, and outside a developer's editor it arrives as a wall of asterisks and pound signs. Both formats share one trait: they are finished work that looks unfinished everywhere you can actually send them.
So the good artifact — the infographic, the model, the write-up you and your AI spent an afternoon on — arrives as an attachment nobody opens.
Start where you are
Both are free, and both run on your own Cloudflare account. Public takes about ten minutes and asks nothing of your reader. Secured adds a login wall in front of it.
Just share it.
Free · about ten minutes · your own domain optional
Deploy to your own Cloudflare account and publish. You get an unguessable link that anyone you send it to can open — no login, no install, nothing to sign up for. Put it on your own domain now, later, or never.
noindex by defaultFor anyone with a file and a person to send it to.
Lock it to named people.
Free · your own domain · Cloudflare Zero Trust
Put it on share.you.com and gate documents to specific email addresses. Your reader gets a six-digit code by email and reads the document. No account, no password, no app.
For protecting your own work — or running a whole practice (below). Needs your own domain and Cloudflare Zero Trust, both on the free plan.
You are not picking a plan. Start Public and add Secured whenever you actually need a door — re-run setup, choose Secured, and everything you have already published carries across untouched. It undoes just as cleanly.
One durable URL holding a set of documents, with permissions on the collection instead of on each link. Name the people who can open it once, and everything you put there is theirs to browse.
One portal for your household paperwork, one for a board you sit on, one for your own notes that nobody else opens. A private shelf with a URL — no filing system to learn.
One portal per client. Nine months and fourteen artifacts later they have one bookmark, not fourteen emails — and adding someone to their team is one change, not fourteen.
Honest limit: with a handful of documents and one audience, a shared folder is simpler. Portals earn their keep once the artifacts pile up or the audiences differ.
Try it — pick how a document travels
Features
The MCP server runs inside your Worker. claude.ai, Desktop, mobile, Claude Code — same server, all of them. You never export a file.
Publishing over a title replaces the document in place, same URL. No graveyard of stale links, and it asks before it overwrites.
No account, no app, no extension. A link, or a link and a six-digit code.
Secured documents record who opened what, and when. You read it with one command — pagevault views — from your own machine, not from the browser console. That is deliberate: putting it in the console would mean handing the Worker a far wider Cloudflare credential than it holds. No IP addresses, no user agents, no third-party analytics, and a rolling three-month window.
Sandboxed iframe, strict CSP, and a test that fails the build if anyone ever grants the frame your origin.
Your Cloudflare account, your domain, your KV, your data. MIT-licensed. Delete it and it's gone; there's no vendor in the middle.
Read any document back as its original source. Export the whole system as a folder tree of plain files.
Why it's shaped this way
Nine months into an engagement you've made fourteen artifacts for one client. Fourteen links, fourteen emails — and in March they're digging through Gmail for the architecture doc you sent in January.
Every other tool in this category treats the link as the unit: publish a file, get a URL, done. PageVault puts permissions on the client, and keeps their whole collection in one place.
Then it does the thing that only works because an AI assistant is in the loop: the collection reads back. Months later you ask Claude — over the very same connection you published through — "what did we decide about the migration?", and it searches that client's portal and answers out of the documents themselves. You are not hunting for a file; you are asking a question.
Publishing and remembering become the same act.
Start to finish
You say it in the chat where you made the thing. A tool call runs, and a URL comes back.
The owner console: portals down the side, one client's documents in the main panel, each with a badge showing how far it can travel.
We sent a six-digit code to cfo@acme.com. No account, no password — enter it and read.
The reader's view — the rendered artifact on your domain, beside the code prompt that makes "no account, no password" concrete.
Deploy once. After that it's a sentence and a link.
Straight answers
We built a field guide covering ten tools across six capability groups, and PageVault leads two of them. Here's the short version of the other four.
jonesphillip/sharehtml — same Cloudflare design, and it does what we deliberately don't.
Use an end-to-end-encrypted tool. Our Worker can read what it serves.
That's a deal room. Different product.
That's a client-portal SaaS, and a much larger product.
Dogfood
The field guide and the feature walkthrough are single self-contained HTML files — inline styles, inline script, no build step, no external assets, no tracking — served through PageVault, into the same sandbox every document gets.
Written in a conversation. Handed over as a link. If a claim on them were false, they'd be the thing that broke.
MIT · pre-1.0 and honest about it · built by @danjamk