Really nice! I tried out a similar thing but with tldraw as the canvas engine: https://github.com/aleda145/terminaldraw
I see Cate also uses node-pty. I didn't know what psuedo terminals were before, it's cool stuff
I see Cate also uses node-pty. I didn't know what psuedo terminals were before, it's cool stuff
Cate is a bit broader in scope: Electron desktop app, persistent project workspaces, node-pty/xterm terminals, browser panels, Monaco editors, docs, git/worktrees, docked tabs/splits, and now agent panels as well.
PTYs were a fun rabbit hole. The basic idea is simple, but making terminals feel native inside a canvas is where it gets tricky: lifecycle, resize behavior, restoring sessions, shell fallback, scrollback, performance, and not breaking when panels are moved/docked/detached.
Cool to see someone else exploring the terminal + canvas direction too. I’ll take a closer look at your repo.