Language: English | 简体中文
PageVault is a personal-first, self-hosted publisher for sharing AI-generated HTML, Markdown, and infographics in WeChat and other messaging apps. It turns files that are awkward to preview in chat into controlled links that open directly in a browser.
Upload once → get a controlled link → paste it into any chat.
Free-tier friendly: PageVault can start on Cloudflare's included free quotas for Workers, D1, and R2. Usage beyond those quotas is subject to Cloudflare's current pricing.
- Chat-ready sharing — Turn HTML and Markdown that messaging apps cannot preview into browser-friendly links.
- Built for AI output — Share AI-generated interactive pages, reports, documents, and infographics.
- One upload, one link — Copy a usable link as soon as the upload finishes, without building a website.
- Personal-first — A single-admin design without teams, tenants, or complex roles.
- Controlled access — Choose public or private visibility, set URL expiry and file retention, disable access, or delete content.
- Private storage — Original files are never exposed directly; every public request passes through the PageVault gateway.
- Deploy your way — Start with Cloudflare Workers, D1, and R2 free quotas, or run the same service with Docker.
PageVault keeps business logic in packages/core and uses runtime-specific adapters:
| Runtime | Application | Metadata | Object storage |
|---|---|---|---|
| Cloudflare | Worker + Workers Static Assets | D1 | Private R2 bucket |
| Docker | Node.js 22 | SQLite | Local files |
Production uses separate admin and public hostnames. The incoming Host header selects the admin workspace or public publishing gateway, while the same service enforces visibility, status, and expiry rules.
Install Node.js 22, then enable the repository-pinned package manager and install dependencies:
corepack enable
pnpm installGenerate the password hash required by both deployment modes:
pnpm tsx scripts/hash-password.tsThen choose a deployment target:
| Target | Best for | Guide |
|---|---|---|
| Cloudflare | Free-tier-friendly runtime with D1 and R2 | Cloudflare deployment |
| Docker | Self-managed server with SQLite and local disk | Docker deployment |
For a contributor-oriented local setup, see CONTRIBUTING.md.
- Configuration reference
- Cloudflare deployment
- Docker deployment
- HTTP API
- Runtime security model
- Vulnerability reporting
The main repository checks are:
pnpm run typecheck
pnpm run lint
pnpm run test
pnpm run buildSee CONTRIBUTING.md for local services, environment setup, and pull request expectations.
Issues and pull requests are welcome. Please read CONTRIBUTING.md before proposing a change. Report security vulnerabilities privately according to SECURITY.md, not through a public issue.
PageVault is available under the MIT License.
