# gui.new
HTML in, URL out. One POST call → instant shareable page with real-time sync.
## Install as an agent skill
```
npx skills add stratuslabs/gui-new-skill --skill gui-new -g
```
## Quick start
```
POST https://gui.new/api/canvas
Content-Type: application/json
{"html": "
Hello
", "title": "My Canvas"}
```
Response:
```json
{
"id": "abc123",
"url": "https://gui.new/abc123",
"edit_token": "...",
"expires_at": "2026-03-11T12:00:00Z"
}
```
That URL is live. JavaScript runs. Forms work. Inputs sync across viewers in real-time.
Always share the `url` with the user.
## Input formats
**HTML** (most flexible):
```json
{"html": "Hello
", "title": "My Page"}
```
**Markdown** (server-rendered with syntax highlighting):
```json
{"markdown": "# Hello\n\n**Bold** and `code`.", "title": "My Doc", "theme": "dark"}
```
**Mermaid diagrams** (pannable, zoomable):
```
POST https://gui.new/api/flow
{"mermaid": "graph TD\n A-->B", "title": "My Flow"}
```
**Multi-frame** (tabbed views):
```json
{"html": "Default
", "frames": [{"html": "Tab A
", "label": "A"}, {"html": "Tab B
", "label": "B"}]}
```
## Update
```
PUT https://gui.new/api/canvas/abc123
Authorization: Bearer {edit_token}
Content-Type: application/json
{"html": "v2
"}
```
All viewers see changes in real-time. Free: 3 edits. Pro: unlimited.
## Craft
- Self-contained. Inline styles, `