Theseus Navigator — Silent Mode's Electron browser with the Ariadne resolver built in.
Find a file
Local Dev 8ed051c2da feat(pdf-editor): edit the document's own text on the page, and a line means the whole line
Three complaints, one cause between the first two.

A line of a PDF is rarely one run. pdf.js splits it wherever the file does
— a font change, a kerning adjustment, a colour change — so a heading can
be three spans and an invoice line ten. Replacing the span under the
cursor covered a fragment and left the rest of the line standing, which is
exactly what a replacement that looks like a copy laid over the original
is. A run is now the whole visual line: the spans that share its baseline
and sit close enough to be spacing rather than a second column, with the
spaces the geometry implies put back between them.

And that line is edited on the page. The dialog that used to hold a copy
of the words is gone: the cover goes down first, carrying the line's own
words at the page's own size and colour, and the caret opens on it. The
cover keeps its words hidden while you type, so the original never shows
through the thing covering it. Escape with nothing changed lifts the cover
again and leaves the page as it was found — no mark, no undo step.

The rotate grip was a square like the resize handles, wearing the open
hand that means drag-the-page. It is a disc with a turning arrow now, and
a cursor drawn to match, since no standard cursor means turn. The inline
style that was defeating the stylesheet is gone with it.

Ctrl and the wheel zoom, about the pointer rather than the top-left, so
the words you were reading stay where they were. A plain wheel still
scrolls.
2026-09-27 19:24:28 +02:00
addon-build/docx-editor feat(docx-editor): the page fills the window, and two fonts ship with it 2026-09-22 19:12:56 +02:00
bundled-addons feat(pdf-editor): edit the document's own text on the page, and a line means the whole line 2026-09-27 19:24:28 +02:00
dev Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
docs docs: scope the signing allow-list per extension, not per app 2026-09-22 00:47:00 +02:00
lib feat: community extensions — publish with a BCDN name, install from Settings, theseus.x catalog 2026-09-20 15:26:30 +02:00
nsis Ariadne 0.1.1 + Theseus fetches it from silentmode.st (no more bundling) 2026-09-08 01:27:51 +02:00
scripts fix(theseus/addons): windows-tar fixes for the addon updater, verified end-to-end 2026-09-07 22:28:55 +02:00
snapshots Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
addon-inject-preload.js feat(theseus/bchwallet): window.bitcoincash dapp bridge with per-origin permissions 2026-09-06 02:56:34 +02:00
addon-tab-preload.js feat(addons): let an add-on talk to its own full-tab pages 2026-09-22 08:34:25 +02:00
addon-update-pubkeys.js feat(theseus/addons): bake operator pubkey — signed update endpoint now live 2026-09-07 23:57:47 +02:00
addon-updater.js fix(theseus): extension updates re-check, announce and install in place 2026-09-22 21:25:33 +02:00
addons-host.js Merge branch 'claude/sleepy-maxwell-251ee6-b' into HEAD 2026-09-23 00:25:36 +02:00
address-picker-preload.js Ship Theseus 0.3.4 3d6d3d6a (address-picker delete X, Enter picks highlight, URL bar override) 2026-09-02 04:28:54 +02:00
address-picker.html Ship Theseus 0.3.4 3d6d3d6a (address-picker delete X, Enter picks highlight, URL bar override) 2026-09-02 04:28:54 +02:00
approval-preload.js feat(theseus/bchwallet): per-site payment allowance for remembered sends 2026-09-06 12:43:17 +02:00
approval.html fix(theseus/light): sweep hardcoded acid → var(--acid), Theseus button uses BCH dark 2026-09-08 01:06:40 +02:00
auth-prompt-preload.js fix(theseus): prompt for HTTP authentication instead of showing the bare 401 2026-09-15 22:30:29 +02:00
auth-prompt.html fix(theseus): prompt for HTTP authentication instead of showing the bare 401 2026-09-15 22:30:29 +02:00
bcnr-origin.js Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
bcnr-preload.js feat(theseus): page dialogs drawn by Theseus instead of Chromium's stock boxes 2026-09-27 17:53:21 +02:00
BROWSER-PROMPT.md docs(theseus/prompts): tool-agnostic phrasing in session-prompt templates 2026-09-10 22:21:19 +02:00
chrome.html Merge release/0.3.56 into release/0.3.57 2026-09-27 11:25:19 +02:00
collision-preload.js Collision modes (BCNR/ICANN) + root TLD cert + VPS electrum-source indexer 2026-08-02 11:39:00 +02:00
collision.html Theseus: in-tab collision prompt + toggle-style switcher + auto-switch 2026-08-02 14:43:31 +02:00
DESIGN-integrated-wallet.md Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
DESIGN-password-manager.md Snapshot in-progress work: Ariadne mobile, Theseus password manager, Hephaestus 2026-08-14 23:17:18 +02:00
DESIGN-wallet-multi-account-amendment.md docs(theseus): draft wallet multi-account amendment 2026-09-09 02:17:01 +02:00
downloads-preload.js Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
downloads.html Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
engine-picker-preload.js Theseus: Firefox-style search picker (favicons, catalog, scan) 2026-07-30 22:55:52 +02:00
engine-picker.html Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
error-preload.js feat(theseus/error): offline banner + BCNR did-you-mean on typos 2026-09-04 20:21:30 +02:00
error.html fix(theseus/light): sweep hardcoded acid → var(--acid), Theseus button uses BCH dark 2026-09-08 01:06:40 +02:00
GOTCHAS.md docs: VPS is SilentMode (not Coinspectrum); sketch storage-as-product roadmap 2026-08-18 03:21:03 +02:00
home-preload.js fix(theseus/home): dynamic search-engine name in placeholder 2026-09-08 00:20:37 +02:00
home.html theseus: home page carries the Theseus icon; silentmode.st/theseus favicon path 2026-09-20 16:29:35 +02:00
js-dialog-preload.js feat(theseus): page dialogs drawn by Theseus instead of Chromium's stock boxes 2026-09-27 17:53:21 +02:00
js-dialog.html style(theseus): page dialogs as notification cards, toned by what they say 2026-09-27 18:02:09 +02:00
link-status-preload.js Theseus: link-hover status bar (bottom-left href pill) 2026-08-29 15:49:30 +02:00
link-status.html feat(theseus/chrome): Ariadne's Thread registry menu, address-bar overflow fix, full-width link pill 2026-09-09 11:40:46 +02:00
main.js style(theseus): page dialogs as notification cards, toned by what they say 2026-09-27 18:02:09 +02:00
messages-preload.js Hermes: optional bind to password vault (skip the second mnemonic prompt) 2026-08-19 00:38:52 +02:00
messages.html fix: use BCH-primary #0AC18E in light mode + strip Electron token from UA 2026-09-08 01:04:27 +02:00
package-lock.json chore: sync package-lock to 0.3.52 2026-09-22 19:56:55 +02:00
package.json feat(theseus): page dialogs drawn by Theseus instead of Chromium's stock boxes 2026-09-27 17:53:21 +02:00
PACKAGING-PROMPT.md Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
PENDING.md Ship Theseus 0.0.2 b62ecf52 (shield green + picker→Search + toggle refactor) 2026-08-06 01:55:46 +02:00
popover-preload.js Collision modes (BCNR/ICANN) + root TLD cert + VPS electrum-source indexer 2026-08-02 11:39:00 +02:00
popover.html feat(theseus): consume owner-signed DNS records alongside on-chain records 2026-09-16 00:53:13 +02:00
preload.js Merge release/0.3.56 into release/0.3.57 2026-09-27 11:25:19 +02:00
pw-fill-preload.js Theseus UX batch: tabs, address history, password autofill MVP, home cards 2026-08-17 02:17:12 +02:00
pw-fill.html Theseus UX batch: tabs, address history, password autofill MVP, home cards 2026-08-17 02:17:12 +02:00
README.md Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
RELEASE-HANDOFF.md Ship Theseus 0.0.2 (SameSite cookie shim) 2026-08-05 18:51:16 +02:00
ROADMAP-identity-wallet.md docs(theseus): note the Siacoin wallet's derivation and node-URL policy 2026-09-06 18:49:33 +02:00
SESSION-PROMPT-identity-wallet.md docs(theseus/prompts): tool-agnostic phrasing in session-prompt templates 2026-09-10 22:21:19 +02:00
settings-preload.js fix(theseus): extension updates re-check, announce and install in place 2026-09-22 21:25:33 +02:00
settings.html fix(theseus): extension updates re-check, announce and install in place 2026-09-22 21:25:33 +02:00
sidebar-preload.js feat(theseus/screenshot): 0.6.1 — text tool fix, category wrap, sidebar close X 2026-09-09 10:55:21 +02:00
test-installer.wsb chore: push-split helper for per-project forge repos + Windows Sandbox installer config 2026-09-09 10:33:23 +02:00
webapps.js Merge release/0.3.56 into release/0.3.57 2026-09-27 11:25:19 +02:00

Theseus Navigator

The browser — the consumer face of the stack. Native .bch support with the resolver built in, so a user installs one app instead of modifying their operating system. Named for the thread through the labyrinth: the chain is the thread.

Scope

  • Electron shell (Chromium engine, no forking): tabs, address bar, history.
  • In-process .bch resolution — no system daemon, no NRPT, no OS trust-store changes; reuses bns.js from the BNS repo as a library.
  • Record handling: h render, ip connect, p/s3 via in-app gateway, u redirect.
  • TLS via cert-verify hook (Electron setCertificateVerifyProc) against the BNS root / on-chain tls fingerprints — no OS store touched.
  • Provenance indicator: shows whether a page came from the chain / Sia / a direct server, with NFT category and record type — the decentralized padlock.

Status: not started

Build it in its own session/repo. The ready-to-paste brief is BROWSER-PROMPT.md (a reference copy in this folder; canonical source is D:\Dev\NameCoin\BROWSER-PROMPT.md — if they diverge, NameCoin wins). It points here and reuses the resolver core. theseus.bch is registered and should eventually serve the browser's own homepage over the protocol it implements.

Roadmap

BUILD-ROADMAP.md Stage 5.