Getting Started

BrewPage is a free hosting platform for HTML pages, key-value data, JSON documents, files, and multi-file sites. No signup required — publish content instantly.

What You Can Publish

  • HTML / Markdown — Single-page hosting, auto-rendered Markdown, optional password protection
  • KV — Key-value store, up to 1,000 keys per namespace, 1 MB per value
  • JSON — JSON document store, up to 10,000 docs per collection, 1 MB per doc
  • Files — File hosting, up to 5 MB per file, 1,000 files per namespace
  • Sites — Multi-file HTML site hosting via ZIP or individual files, up to 1,000 files per site, TTL 1–30 days

Base URL: https://brewpage.app (alias: https://brewdata.app — same API)


Quick Start — 4 Ways to Publish

1. Web UI

  1. Open brewpage.app

    Open brewpage.app in any browser

  2. Drop your content

    Drag & drop HTML, Markdown, CSV, image, or any file

  3. Click Publish

    Optional: set password, TTL, tags

  4. Share your link

    Copy the short URL and send to anyone


2. Claude Skill (/brewpage)

  1. Install brewcode plugin

    Run: npx skills add kochetkov-ma/claude-brewcode

  2. Use the slash command

    /brewpage "Hello world" — or say: publish this to brewpage

  3. Pick namespace and password

    Claude asks interactively, defaults to public / no password

  4. Get link + saved token

    URL returned, owner token saved to .claude/brewpage-history.md

Skill docs · Source


3. MCP Server (AI Agent)

  1. Add brewpage-mcp to config

    Add {"brewpage":{"command":"npx","args":["-y","brewpage-mcp"]}} to Claude Desktop or Claude Code config

  2. Ask Claude: "Publish this to BrewPage"

    Claude calls the API automatically, supports HTML, Markdown, files

  3. Get link + owner token

    Claude returns the URL and reminds you to save the token

MCP Server guide · npm package


4. REST API

  1. POST your content

    Send JSON to /api/html with content and format

  2. Get URL + owner token

    Response includes url, shortUrl, ownerToken

  3. Share the link

    Use the URL or short URL anywhere

Publish HTML:

curl -X POST https://brewpage.app/api/html \
  -H "Content-Type: application/json" \
  -d '{"content":"<h1>Hello World</h1>","format":"HTML"}'

Publish Markdown:

curl -X POST https://brewpage.app/api/html \
  -H "Content-Type: application/json" \
  -d '{"content":"# My Notes\n\nMarkdown is **auto-rendered**.","format":"MARKDOWN"}'

Upload a file:

curl -X POST https://brewpage.app/api/files/uploads \
  -F "namespace=assets" \
  -F "file=@image.png"

Response:

{
  "namespace": "demo",
  "id": "aBcDeFgHiJ",
  "url": "https://brewpage.app/demo/aBcDeFgHiJ",
  "shortUrl": "https://brewpage.app/s/xYz123",
  "ownerToken": "tok_abc123..."
}

Save your ownerToken! You need it to update or delete content later. It cannot be recovered.


More API Examples

Store key-value data:

curl -X PUT https://brewpage.app/api/kv/myapp/config/theme \
  -H "Content-Type: application/json" \
  -d '{"value": "dark"}'

curl https://brewpage.app/api/kv/myapp/config/theme

Store JSON document:

curl -X POST https://brewpage.app/api/json/myapp/users \
  -H "Content-Type: application/json" \
  -d '{"document":{"name":"Alice","role":"admin"}}'

Platform stats:

curl https://brewpage.app/api/stats

Next Steps

All Resources

ResourceLink
Live platformbrewpage.app
Alias domainbrewdata.app
API Docs (Scalar)kochetkov-ma.github.io/brewpage-openapi
OpenAPI Specopenapi.yaml
MCP Server (npm)brewpage-mcp
Claude Skillbrewpage-publish
Skill Docsdoc-claude.brewcode.app
Brewcode Pluginclaude-brewcode