Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
- Canvas height 200px → 320px (was cramming 301 nodes vertically)
- Remove hardcoded width/height HTML attrs — constructor sizes via
getBoundingClientRect + devicePixelRatio
- Repulsion force 300 → 500 for better spread
- Warmup ticks 120 → 200 for settled layout
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Explore page fetches ?summary=true — skips vertexMeta (244KB saved)
and trims edges to source/target/connectionType. Full data loads
on demand when viewing an island detail. Also skips contrail init
in summary mode for faster cold starts.
523KB → 216KB, 1.2s → 230ms cold, 90ms warm.
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Landing page only needs a json_extract query, not contrail schema
init. Cold start went from ~450ms to ~170ms.
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Landing page only needs id, lexmin, title — extract those via
json_extract instead of pulling the full record (117KB each).
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Lexicon: connections field now holds objects {uri, source, target,
connectionType, note} instead of bare AT URIs. The graph renders
straight from the record — no chunked D1 queries needed.
Backfilled both existing records via PDS putRecord.
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>