Browser Interface

HAVI’s interface is minimal: a toolbar for navigation and a set of internal pages for configuration. Most complexity lives in the content, not the chrome.

Toolbar

Button Action
◄ ► Back/forward in history
URL input Address bar
↗ Share Copy shareable URL to clipboard
📁 Import Import a folder as packets
✎ Edit Edit current page in hppr-editor://
⚙ Admin Toggle admin panel
+ New tab

The address bar accepts multiple formats: - Full URLs: hppr://group/app/path - Coordinates: //group/app/path (converted to hppr://) - Shortcuts: group/app/path (also converted to hppr://)

Home Page

New tabs open havi://home, which provides:

Admin Pages

Internal pages for managing your local repository:

URL Purpose
havi:/// Dashboard overview
havi:///server Server status: port, repo path, verification key
havi:///routes Manage routes and site-trust settings
havi:///ring0 Approve or deny Ring0 proxy requests

Ring0 Proxy Approvals

The havi:///ring0 page handles escalation requests from sites. When a site needs to perform an operation outside its Ring1 permissions, it writes a request packet. This page:

  1. WATCHes //repo/admin/ring1/ for new proxy requests
  2. Shows the ring1 name, requested command, and target
  3. Approve executes the command via ring0 and writes the result
  4. Deny writes ERROR FORBIDDEN to the reply path

This keeps sites sandboxed while allowing controlled privilege escalation with user consent.

Directory Listings

When you visit a URL ending with /, HAVI issues a LIST command and renders the results as clickable HTML. Directories are shown with trailing / to distinguish them from files.

Visual Design

HAVI uses a dark theme:

Element Color
Background #1a1a2e
Cards #16213e
Accent #4ecdc4
Text #eeeeee