Expands the explorer from repos+agents into a full replacement for
gitlawb.com/node, with URL paths matching the old site 1:1 (minus the
/node prefix) so a single redirect covers the migration:
- / — node overview dashboard: identity, stat tiles, live activity
feed, agent-task summary, p2p status, quick clone
- /peers — searchable peer directory with live per-peer ping checks
- /events — node-level ref-update feed with local/gossip filter and
visibility-aware 30s auto-refresh
- /tasks + /tasks/:id — agent task queue with server-side status
filter, payload-derived titles, and pretty-printed payload/result
- /network — fan-out to the 4 federation nodes with per-node cards
and a replication-coverage table over their event feeds
Peer nodes serve no CORS headers, so node2/node3/manila get proxy
prefixes in vercel.json and the vite dev proxy. Section nav moves
from per-page tabs into the global layout.
Co-Authored-By: Claude Fable 5 <[email protected]>
* Add Open Graph and Twitter card metadata with branded share image
Sharing the explorer link previously produced a bare, imageless card.
index.html now carries og:/twitter: metadata with absolute URLs (link
scrapers don't resolve relative paths or run JS), and public/og.png is
a 1200x630 card in the app's own terminal aesthetic: blueprint grid,
gitlawb mark + "explorer." wordmark, and a real repo row with activity
sparkline. 41 KB, rendered from a JetBrains Mono HTML template.
Co-Authored-By: Claude Fable 5 <[email protected]>
* Feature openclaude in the OG card repo row
Real repo data from the node: z6MkqDnb/openclaude, its actual branch
and update recency, described by its README one-liner.
Co-Authored-By: Claude Fable 5 <[email protected]>
---------
Co-authored-by: Claude Fable 5 <[email protected]>
The Vite dev proxy (/api, /node-info → node.gitlawb.com) only exists in
the dev server, so the deployed static build 404'd every API call.
vercel.json now mirrors the proxy in production and adds an SPA fallback
so client-side routes survive refresh/deep links. Also ignores the
.vercel project-link directory.
Co-authored-by: Claude Fable 5 <[email protected]>
Branding: the official gitlawb mark (extracted as a 4KB currentColor SVG
from the platform brand asset) replaces the text-only header branding —
now [logo] explorer — and the purple-bolt favicon, which becomes the
mark on a black tile. Title and footer read "gitlawb explorer".
Detail page:
- Owner DID middle-truncates via new truncateDid() (did:key:z6Mkn…xXxYk),
full DID on hover and in the copy button; footer node DID reuses it.
- Right stats column widens 380px → 440px with rebalanced cells so the
commit hash and created date sit on one line.
- README render and file markdown preview drop the 72ch cap; the code
viewer drops its 1100px cap — both now fill the content width.
Co-authored-by: Claude Fable 5 <[email protected]>
Rows go from a dense single line to a taller two-line layout (name +
pills, full-width description) with a per-repo commit-activity sparkline
in a new column, GitHub-style.
- Sparkline: dependency-free SVG micro bar chart of weekly commit counts
(12 weeks); past weeks in a de-emphasis tone, current week in the warm
accent. Values carried by an aria-label; counts at the node's
30-commit API cap are reported as a floor ("30+").
- useRepoActivity: IntersectionObserver-gated lazy load per row, session
cache, and a 2-slot concurrency pool since the node limits concurrent
connections. Hover-prefetched repos (repoCache) resolve without a
fetch via the new RepoCommit.dateRaw field.
- RepoList header and RepoRowSkeleton updated to the new grid.
Co-authored-by: Claude Fable 5 <[email protected]>
- Add Vitest unit test suite (60 tests) covering the pure-logic modules
in src/lib/: fuzzy matcher, line-range permalinks, language detection,
API helpers/classification, and TOC extraction
- Rewrite README with features, quick start, API docs, project structure,
and testing guide
- Add MIT LICENSE, CONTRIBUTING.md, and a PR template
- Add GitHub Actions CI (lint, test, build)
- Rename package to gitlawb-node-explorer with proper metadata
Co-authored-by: Claude Fable 5 <[email protected]>
Visual overhaul to match the gitlawb terminal mockups in reference/:
JetBrains Mono throughout, dark-first near-black theme (light kept as
secondary), grid-line hero panels, uppercase micro-labels, square pills,
and a footer carrying the node DID and version. Removes the inline-style
+ JS hover pattern and dead components (Navbar, PageHeader).
Points at production node.gitlawb.com (82k repos) and replaces the
fetch-everything data layer with server-side pagination via limit/offset
and X-Total-Count. List state is URL-driven (?page=&per=&q=&sort=&owner=).
Search/sort run client-side per page until VITE_SERVER_SEARCH enables the
node's q=/sort= params.
New: agents explore tab (capabilities, trust tiers, owner->repos link),
sort + fork filters, debounced labeled search, skeleton loading states,
real issues/pulls/events/certs lists in repo detail with error + retry,
working browse-code/pull-requests buttons, node stats in the top bar.
Fixes: doubled did:key prefix in detail header, duplicate star count in
StatsPanel, null-description crash in search, keyboard-inaccessible rows,
hover-only clone button, header/content width mismatch.
Co-Authored-By: Claude Fable 5 <[email protected]>