A spatial browser for the web — knowledge as a graph, browsing as etching.
Webpages are nodes in a force-directed graph rendered on a tiling workbench. Paths cut through the substrate by repeated traversal accrue meaning: each user wears their own holloways through the web, each community wears its shared ones.
This is a Cargo workspace organizing Mere into modular crates. Most crates ship as 0.0.x reservations at this stage; implementation is in progress.
| Crate | Role |
|---|---|
mere |
The browser product crate — entrypoint and surface composition |
mere-identity |
Identity management — master Ed25519 keypair, keychain integration, per-protocol derivation |
mere-transport |
Peer transport layer — iroh-based authenticated streams between known peers |
graphshell |
Portable shell layer — host GUI integration (iced / gpui / html-css / other) and Navigator surface |
graphshell-core |
Portable Graphshell identity, authority, graph, pane, and shell-state contracts |
graphshell-runtime |
Portable runtime adapters, frame projections, host ports, and surface schedule application |
graphshell-host |
Host-side adapters and toolkit ordering for fresh Graphshell surface hosts |
graphshell-host-iced |
Fresh iced host boundary — queues surface lifecycle requests without old GraphBrowserApp mutation assumptions |
verso-tile |
Rendering-surface management — receives engine output and places it into GraphTree tiles (Verso brand) |
inker |
Engine controller — selects and orchestrates content engines |
platen |
Composition surface — graph-aware layout, the press to verso's page |
nematic |
Smolweb engine — Gemini, Gopher, static HTML, Markdown, RSS/Atom |
murm |
Bilateral peer-to-peer comms supercrate |
murmuring |
Protocol core for bilateral chat-protocol selection — inner layer of murm |
moothold |
Community / federation supercrate (will switch to moot if that name frees up) |
mooting |
Protocol core for community social-primitives selection — inner layer of moothold |
Engines (Wry, Serval, Nematic) produce content. The inker pairs each engine to its content. The platen composes the layout. The verso receives the impression. The user sees the printed result in the surface that mere composes atop graphshell. Mnem keeps the impressions over time. Murm carries one-to-one comms; moothold carries community/federation.
Vocabulary used in user-facing language:
- moot — a single persistent themed federatable graph-view community
- demesne — a federation of moots (sovereign cluster)
- suzerainty — the relation between a demesne and its constituent moots
- volvelle — a moot expanded radially in the Navigator (medieval rotating-disc knowledge instrument)
- astroid — internal UX vocab for graphlet hub-collapse
- tessera — trust / contribution / reputation token, validated across demesnes
- engram — canonical portable contribution payload
- flora — the body of engrams composing a moot's geist
- mnem — your private local accumulated browsing memory
- kith / kin — contact tier distinction; orthogonal to moot membership
- orrery — internal term for the root graph view (where the whole knowledge-cosmos spins at once)
Pre-1.0 development. The 0.0.x releases reserve crate names and document intent; implementation is in progress.
The old Graphshell codebase is prototype evidence, not a final crate map. Mere keeps a crate boundary only when it lowers dependency, ownership, validation, or change cost: optional toolkits and engines stay isolated, graph truth has one owner, contracts can be tested without booting a GUI, and prototype shortcuts do not become stable API.
Licensed under the Mozilla Public License 2.0.