terminet
v0.1.3
Published
Terminal-native profiles. A webring for the terminal.
Readme
terminet
Terminal-native profiles — a webring for the command line.
Publish a personal profile as an npm package; anyone views it with npx terminet <handle> and wanders from one profile to the next through the connections you list. No servers and no accounts beyond npm — profiles are just data on a CDN, rendered by a trusted client that strips anything unsafe.
View a profile
npx terminet milst↑/↓ (or j/k) move · Enter follows a connection · b goes back · number keys open links · q quits.
Make your own
Your handle is your npm username. Scaffold, preview, publish:
npx terminet init # scaffold profile.json (+ schema + AGENTS.md)
npx terminet banner me.gif # optional: ascii-fy an image/gif/video into your banner
npx terminet preview # render it live (--watch to hot-reload as you edit)
npx terminet publish # ship it to npm as @<handle>/profileinit also drops an AGENTS.md, so you can hand the folder to a coding agent, describe yourself, and let it fill in the profile.
How it works
- npm is the database. Each profile is a tiny package,
@<handle>/profile, containing aprofile.json. - A CDN is the read path.
terminet <handle>fetches that JSON from unpkg (jsDelivr fallback) — no backend to run. - The client is the trust boundary. Profile data is untrusted, so the renderer sanitizes it — stripping terminal control/escape sequences — before drawing. That's what makes it safe to run a stranger's profile.
- Connections are one-way links. You list the handles you want to point at; there's no follow-back, no server keeping a graph. Navigation just resolves the next profile the same way.
