Build complete web applications using only HTML, CSS, and HTTP
Pagelove is a platform that stores HTML natively and lets you read, write, and compose individual elements using CSS selectors over standard HTTP. There is no separate database to model, no API layer to build, and no build step to run. You write HTML, address it with selectors, and the platform handles storage, composition, access control, and real-time updates.
A minimal example
Create the page
A Pagelove page lives on your host. You get a host and deploy your HTML through the Pagelove console — drag a folder of files onto your host, or edit it over WebDAV. Once your page is on your host, every element inside it is addressable over HTTP.
Here's the page we'll work with:
<!DOCTYPE html>
<html><body>
<h1>My Page</h1>
<ul id="items">
<li>First item</li>
</ul>
</body></html>
Add an item to the list:
POST /getting-started-demo.html
Range: selector=#items
Content-Type: text/html
<li>Second item</li>
HTTP/1.1 206
Content-Range: selector=#items
<li>Second item</li>
Read back just the list:
GET /getting-started-demo.html
Range: selector=#items
HTTP/1.1 206
Content-Range: selector=#items
<ul id="items">
<li>First item</li>
<li>Second item</li>
</ul>
What just happened
You addressed individual elements inside an HTML document by CSS selector, over plain HTTP. A POST with Range: selector=#items appended a new list item, and a GET with the same selector read back just that element. No database, no API layer, no build step.
Where to go next
- Your first Pagelove application — a step-by-step tutorial: build a working shopping list, saved on the server, in a few minutes.
- Reference — the full platform reference: reading and writing, composing pages, modeling data, permissions, reacting to changes, and the protocol.
- Recipes — task-focused how-tos for common jobs.
- Languages — the authoring languages: Sessel, JavaScript, and Liquid.
For AI agents
Building on Pagelove programmatically? See the complete platform reference for the full specification.