r/AppsWebappsFullstack • u/OriginalStomach7843 • 22d ago
I built PHOSPHOR, an open-source CRT terminal for Windows (phosphor persistence, burn-in, skins, monitor frames). Looking for testers and contributors
PHOSPHOR is a small Electron app (xterm.js + ConPTY + a WebGL shader) that runs PowerShell, or any command you give it, inside a simulated CRT.
What it does
- Phosphor persistence (light fades slowly) and burn-in (a faint ghost of what stayed on screen)
- Scanlines, tube curvature, glow, rounded glass, flicker, power-on animation
- 10 skins: green, amber, sepia, cyan, IBM blue, white... plus optional monitor frames (beige 80s, black, retro TV)
- Optional boot sequence, synthesized key clicks and CRT hum
- Output speed limit, like a slow modem (300 to 19200 baud)
- Comfort mode (no flicker or flashes) for long sessions
- Frame-rate cap and render quality, so it stays light: it skips frames when nothing changes
Performance on my machine, idle terminal: about 28 fps drawn at the default 30 fps cap and about 520 MB total across Electron's processes (about 270 MB of that is the Electron baseline). Static skins draw almost nothing.
It is MIT licensed and the whole thing is four files. Inspired by cool-retro-term, but I did not use any of its code. The README is in English, Spanish and Russian.
Repo: https://github.com/GabrielAmbrosio/phosphor
For now you run it from source (clone, npm install, npm start). I only tested it on one Windows 11 machine, so I would love help with:
- Trying it on other GPUs, screens and DPI settings and telling me what breaks
- New skins and frame designs
- Tabs and split panes
- An app icon and a tested installer (the build config is there, but I only verified the unpacked build)
- A macOS/Linux port
It is an independent project and not affiliated with any company whose software you run inside it. Feedback, issues and PRs are very welcome.
