/webterm

web terminal based on xterm.js in rust

Primary LanguageRustBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

webterm

web terminal based on xterm.js in rust

Screenshot

Is it any good?

Yes.

How does it work?

There is a rust backend based Actix, consisting of two actors:

  • Websocket implements a websocket that speaks the Terminado protocol
  • Terminal handles communication to a child spawned on a PTY using tokio-pty-process.

The frontend is a static HTML page served by actix-web providing an xterm.js UI.

Local development

cargo build
cargo run

Then head to http://localhost:8080/ to see it in action!

Should I run this on the internet?

Probably not. It lets anyone who can access the webpage control your system.