Free HTML & Markdown Hosting for AI Artifacts & Files
Paste HTML or Markdown, drop any file — get a shareable link in seconds.
.md & .html → styled pages · hosts sites, images, PDFs, video & files · no signup · API & AI-agent friendly
Free, no sign-up; pages stay up to 30 days, public or unlisted
Publish HTML, Markdown or a file
Made it in a chat?
Ask ChatGPT, DeepSeek, Gemini or any chat for one file:
- Send the line above at the end of your request.
- Tap Copy code under the answer, or Download the file.
- Paste it in the HTML tab or drop the file in the box above, then tap Publish.
Namespace
Path segment in the URL between brewpage.app and the page id.
Password
Optional password. Toggle generates or clears it; visitors must enter it before the page opens.
Update keeps the link · matches
Copy this prompt to your AI agent
Public gallery
public namespace are shownPasswordless pages from public are shown
What is listed
Pages, Markdown, files and sites from the public namespace that have no password and are still live.
Key-value and JSON stores are never listed.
Why BrewPage
Free, no signup, built for people and AI agents.
| BrewPage | GitHub Pages | Netlify Drop | Cloudflare Drop | Tiiny Host | Static.app | GitHub Gist | |
|---|---|---|---|---|---|---|---|
| No signup to publish | Yes (profile optional) | No (GitHub account) | Partly (claim to keep) | Partly (1-hour preview) | No (free account) | No (account) | No (GitHub account) |
| 100% free, no trial or credits | Yes | Partly (public repos) | No (300 credits/mo) | Partly (free plan limits) | Partly (5,000 visits/mo) | No (7-day trial) | Yes |
| AI agents publish in one call, no key | Yes (API, MCP, skill) | No (token, repo access) | Partly (CLI, 1-hour claim) | Partly (temporary token) | Paid | No (account API key) | No (token needed) |
| Edit, delete, list pages without an account | Yes (owner token, management link) | No (repo access) | No (claim needed) | No (claim needed) | No (account only) | No (account only) | No (author account) |
| 60+ file types; MD, code, CSV, PDF, media previewed | Yes | Partly (MD via Jekyll) | No (files as-is) | No (files as-is) | Partly (no Markdown) | Partly (web file types) | Partly (MD, CSV, images) |
| KV + JSON storage for apps | Yes | No (static only) | Partly (Blobs, account) | Partly (Workers KV, code) | No (none listed) | No (forms only) | Partly (token API) |
| Views shown on every page | Yes (stats for owners) | No (none built in) | No (private analytics) | No (private metrics) | No (private analytics) | No (private analytics) | No |
| Public gallery + brewpage.app domain boost | Yes (public pages) | No (no gallery) | No (no gallery) | No (no gallery) | No (examples only) | No (no gallery) | Yes (Discover feed) |
| Custom domain | Planned | Yes (free) | Yes (after claim) | Yes (after claim) | Paid | Paid | No |
| Lifetime | Up to 30 days (republish anytime; 90 with a profile) | No set expiry (while repo exists) | Claim to keep (1-hour window) | 1-hour preview (claim to keep) | Indefinite (log in quarterly) | Trial, then paid plan | No set expiry (until deleted) |
Yes Partly No Planned Paid Checked Oct 2026 · Sources
Built-in protection
Built-in protection for readers and publications. Spotted a problem? Report abuse.
Mobile-friendly editor
Paste or pick a file and publish from your phone; the Publish bar stays within reach.
Optional profile
Google or email sign-in · all your pages on any device · 90-day storage · stats per page. Publishing without an account stays.
Publish HTML from AI Agents, MCP & REST API
Install prompts for your AI agent skill · MCP · REST
Install the BrewPage publish skill in Claude Code: /plugin marketplace add kochetkov-ma/claude-brewcode /plugin install brewdoc@claude-brewcode Then run /publish to share the current document.
Install the BrewPage MCP server for my agent: npm install -g brewpage-mcp@1.14.4 Then register it under "brewpage" in my MCP config and restart. No install: add https://brewpage.app/mcp as a remote MCP server (no auth).
When you make an HTML page or report for me, publish it on brewpage.app: POST https://brewpage.app/api/html with header Content-Type: text/html and the raw HTML as the body, then give me the URL from the "link" field of the JSON response. Without ns the link is private; add ?ns=public only if I ask for gallery and search. Secrets allowed; likely ones are flagged in notices. For a secret: private namespace + password. Links stay up 15 days by default; add ttl=30 to the query to keep one up to 30 days. More: https://brewpage.app/llms.txt or https://brewpage.app/api/openapi.json
HTML, Markdown & File Hosting FAQ
What is BrewPage?
Free HTTPS hosting for HTML, Markdown, multi-file sites, AI artifacts, and files. No signup. Publish from the form above, or from any HTTP client — see Advanced Tools and the API reference.
What can I host?
HTML Markdown Site JSON File
HTML pages, Markdown (rendered to HTML), multi-file sites (ZIP upload, up to 20 MB / 200 files), JSON documents, and individual files — images, PDF, Office documents (Word, Excel, PowerPoint, OpenDocument), video, audio, archives. For apps and agents there is also a KV store for key-value entries and file storage (S3-compatible object storage), both over REST — see Help. See the API reference for the full surface.
Guides: free HTML hosting and Markdown hosting.
Platform protection
BrewPage keeps strengthening protection for users and publications. If a page looks harmful, report it.
How long are pages available? Can I keep them longer?
Public pages from the editor default to 30 days; API, agent and private publishes default to 15 days; max 30 days (90 with a profile). Set it with the TTL slider on the publish form. After expiration your content is permanently deleted by a nightly cleanup job — there is no recovery. To remove it earlier, see "How do I find, edit or delete my pages?".
Is my page private? Why is (or isn't) it in the gallery?
The public namespace (the editor default) without a password lists the page in the gallery and the sitemap, so search engines can index it. Anyone can find and read it: never put secrets there.
- Custom namespace (e.g.
brewpage.app/<namespace>/<id>) — unlisted, not listed or indexed; anyone with an unpassworded link can read it. - Password — protects reader access and excludes the publication from discovery, including in
public.
Unlisted links and namespace names are not secrets. More: Privacy, Advanced Tools.
How do I find, edit or delete my pages?
The result card after publishing shows your link, a management link and your Owner Token. The management link edits or deletes the page from any device; keep it private. With an optional free profile, all your publications are in one place on any device, with stats, and can be kept up to 90 days.
In this browser, the bookmark toggle in the gallery header switches to All your publications: Public (listed in the gallery), Password (not listed in the gallery) and Private (hidden from the gallery; anyone with an unpassworded link can read it). Scripts use the API, e.g. DELETE /api/html/{ns}/{id} with header X-Owner-Token: <token>; see the API reference.
Your Owner Token stays in this browser until 180 days pass without use; view, paste or clear it in Advanced Tools. Lost the token and the management link, with no profile? The page can't be changed and auto-deletes when its TTL expires. For abuse takedown, use abuse report.
Is BrewPage free? What are the limits?
Yes, 100% free. Limits: HTML/Markdown 5 MB, files 5 MB (video up to 20 MB, audio 5 MB), multi-file sites 20 MB total / 200 files / 5 MB per file, KV values 1 MB, JSON docs 1 MB. TTL: public pages from the editor default to 30 days, API, agent and private publishes to 15 days; max 30 days (90 with a profile). Uploads are rate-limited per IP — exceeding the limit returns 429 with a Retry-After header. Reads are also rate-limited per IP. See Terms and Privacy.
Can AI agents use BrewPage?
Yes — BrewPage is built for AI artifacts. Agents can publish via REST and get a short shareable URL for human review. Start from the API reference (curl examples, OpenAPI spec, MCP server, Claude skill), or grab the machine-readable llms.txt / llms-full.txt.
Guides: share Claude artifacts and publish AI-generated HTML.
Claude Code skill, MCP server, or direct REST — which do I pick?
- Claude Code skill — brewdoc:publish. Install:
/plugin marketplace add kochetkov-ma/claude-brewcodethen/plugin install brewdoc@claude-brewcode. Run/publish. - MCP server — brewpage-mcp on npm. Works with any MCP-capable agent (Claude, Codex, Cursor, Gemini, …).
- Direct REST — any HTTP client. Start at the API reference, or grab llms.txt / llms-full.txt / the interactive Scalar.
- Broader ecosystem — brewcode.app (parent project), claude-brewcode docs, brewpage-action (publish from GitHub workflows), brewpage-cookbook (examples) and brewpage-openapi (OpenAPI spec + MCP server source).
How does BrewPage compare with GitHub Pages, Netlify Drop, Tiiny Host and others?
BrewPage is free and needs no signup: people and AI agents publish in one request, manage pages with an owner token or management link, and get 60+ file types with Markdown, code, CSV, PDF and media previewed, KV and JSON storage, and a view counter on every page. Pages stay up to 30 days (90 with a free profile) and you can republish anytime for a fresh period; see all comparisons, or BrewPage vs GitHub Pages, BrewPage vs Netlify Drop and BrewPage vs Tiiny Host.