phos80 Web Terminal
Hey internet!
While brainstorming a redesign of my personal website, I was very interested in
trying to recapture the experience of visiting a BBS or terminal interface. The
one issue I kept running into was still making it web-friendly. A regular
terminal or BBS interface doesn’t let someone browse with just a mouse or touch,
and if it’s solely command-based, it also won’t work for crawlers or JS-disabled
available.
It’s a simple web library which renders a tree of JSON widgets (text, frames,
rows, columns, images, etc.) with BBCode-style tags for colours and links.
phos80 draws them as real text, with box-drawing characters and fixed-width
columns, and will handle the re-rendering if a window gets resized. A link that
isn’t a URL is run as a command, so help text and navigation use the same
markup.
The layout doesn’t touch the DOM, so the same code renders pages on the server.
This way crawlers and JS-disabled browsers still get the whole page.
if you build something with it, or find it doing something dumb, hit me up over
– Tim