See Surf in action
Two real apps β a design tool and a bookstore β fully agent-ready via Surf commands.
PixelForge
A design tool where every canvas action is a typed Surf command. Agents can build designs without a browser or vision model.
Surf commands exposed
canvas.createβ Create a new canvas with dimensionscanvas.addRectβ Add a rectangle with fill, stroke, shadowcanvas.addTextβ Add text with font, size, colorcanvas.setGradientβ Apply linear or radial gradient fillcanvas.setShadowβ Add drop shadow to elementcanvas.setFontβ Load any Google Fontcanvas.setBlurβ Apply blur effectcanvas.setBorderRadiusβ Round element cornerscanvas.addImageβ Add image from URLcanvas.undoβ Undo last actioncanvas.exportPNGβ Export canvas as PNGPipeline example
POST https://pixelforge-pearl.vercel.app/surf/pipeline
{
"steps": [
{ "command": "canvas.create", "params": { "width": 800, "height": 600 } },
{ "command": "canvas.addRect", "params": { "x": 100, "y": 100, "width": 300, "height": 200, "fill": "#0057FF" } },
{ "command": "canvas.setGradient", "params": { "type": "linear", "from": "#0057FF", "to": "#00C9B1" } },
{ "command": "canvas.addText", "params": { "text": "Made by an agent", "fontSize": 32, "color": "white" } }
]
}Prompt your agent: βFetch the Surf manifest from pixelforge-pearl.vercel.app and build a gradient logo.β
Surf Bookstore
A full e-commerce backend β search, cart, checkout, reviews β all as typed Surf commands. Run it locally with Docker in under 30 seconds.
Surf commands exposed
books.searchβ Search by title, author, or genre with price filtersbooks.getβ Get detailed info about a book by ISBNbooks.featuredβ Staff picks and bestsellersreviews.listβ All reviews for a book with average ratingreviews.addβ Post a review (auth required)cart.addβ Add a book to your cart by ISBNcart.getβ View cart contents and subtotalcart.removeβ Remove a book from cartcart.checkoutβ Complete purchase and clear cart (auth required)store.infoβ Store details β hours, location, genres in stockCheckout pipeline
# Full shopping experience in one pipeline (~47ms total)
POST http://localhost:3000/surf/pipeline
Authorization: Bearer demo-token-123
{
"steps": [
{
"command": "books.search",
"params": { "query": "Dune", "maxPrice": 20 },
"as": "results"
},
{
"command": "cart.add",
"params": { "isbn": "$results.books.0.isbn", "quantity": 1 }
},
{
"command": "cart.checkout"
}
]
}Prompt your agent: βFetch the Surf manifest from localhost:3000. Search for Dune, add it to the cart, and checkout. Token: demo-token-123.β
Run locally in 30 seconds
# Clone and run the Surf Bookstore demo locally
git clone https://github.com/hauselabs/surf
cd surf/apps/demo
docker build -t surf-bookstore .
docker run -p 3000:3000 surf-bookstore
# Discover commands
curl http://localhost:3000/.well-known/surf.json
# Browse books
curl -X POST http://localhost:3000/surf/execute \
-H "Content-Type: application/json" \
-d '{"command":"books.featured"}'
# DevUI β http://localhost:3000/__surfIncludes a DevUI at localhost:3000/__surf β browse all commands interactively in your browser.
Build your own
Both demos are open source. Add Surf to your site in minutes.