NOTE: You should absolutely not run this project in its current state, it will create a gaping security hole on your machine.
PaperTerm is a toy project that I created during my time at the Recurse Center, mostly to refresh my knowledge of TypeScript, DOM interactions, WebSockets, and general shell/terminal functionality.
I also wanted to play around with several other long-running frustrations with terminals: specifically, that they mostly still act like dumb text-based printers, instead of helping you in your workflow.
PaperTerm is different because it:
- Treats each command and its output as a collapsible, rerunnable unit
- Lets you do other things while an earlier command is still running
- Lets you pin previous results to the side of the screen for reference
- Lets you delete mistakes from your command history
- Shows history in the "wrong" direction
- Uses an awful default HTML textbox for input (it's a toy :)
paperterm-2021-07-13.mp4
You absolutely shouldn't run this program, since it will let anyone on your network send terminal commands to your machine.
But if you do want to take it for a spin:
npm run build
npm start
- Browse to http://localhost:3000
- Warp
- smash and related work