A browser over marked packets.
A larger design space for internet systems.
Blob: what bytes?
Plex for whom, about what, when?
Seal by who?
| Need | Form | Example |
|---|---|---|
| Exact | hash address | ////S.<hash>.H3 |
| Latest | coordinate | //grp/app/loc |
| Version | version selector | //grp/app/loc/|/seal/<vkey> |
window.source, explicit named clients, <x>//dse.nl/home/index.htmlIndexed first contact:
//dse.nl/home/index.html
Manual first contact:
//dse.nl/home/index.html/{via:203.0.113.10:4777}
The repo could be a Raspberry Pi at home, a VPS, AWS, or any other reachable machine.
<x> is an HTML element, like <iframe>, for HPPR-native subviews<x src="////V.EXAMPLE~HASH.H3"></x>
<x src="/post/p-2026-03-20-voorbeeld/index.html/|/seal/V.example-userkey.H3"></x>
//dse.nl/forum/comment/p-2026-03-20-voorbeeld/c-0001/index.html
<x src="/comment/p-2026-03-20-voorbeeld/c-0001/index.html"></x>
Raw packets plus wrapper pages.
hppr://dse.nl/home/index.html
hppr://dse.nl/forum/index.html
const post = await window.source.client.get("//dse.nl/forum/post/p-2026-03-20-voorbeeld/index.html");
const page = await window.source.client.get("//dse.nl/forum/index.html");
await window.source.client.add({
headers: [
"Location: comment/p-2026-03-20-voorbeeld/c-0002/index.html",
"Author: alice",
"Published-At: " + new Date().toISOString(),
"Content-Type: text/html; charset=utf-8"
],
data: html
});
Read, list, add, watch. Small surface area. The substrate does the heavy lifting.
client, authority, kindhpprd server as FUSE or NFSThat exists too. I am leaving it out today because the publishing model is the more important shape to show first.
Third parties can serve the same content without becoming the authority for it.
Policy and moderation can be visible packet data instead of hidden application state.
You can fork a platform without losing history, references, or community.
Local repos, cached packets, and delayed sync still let the system keep working when the network disappears.