Web-based interactive terminal emulator that allows users to easily record, share, and replay console sessions.
Go to file
2022-01-06 15:29:02 -05:00
assets rewrite the ws handling according to command example in websocket lib. Basically adding timeout for receive and send 2022-01-06 15:29:02 -05:00
extra add screenshot 2022-01-05 17:48:58 -05:00
go.mod rewrite the ws handling according to command example in websocket lib. Basically adding timeout for receive and send 2022-01-06 15:29:02 -05:00
go.sum has a websocket shell now! 2022-01-05 12:38:52 -05:00
main.go rewrite the ws handling according to command example in websocket lib. Basically adding timeout for receive and send 2022-01-06 15:29:02 -05:00
README.md Add some basic info 2022-01-05 18:04:37 -05:00

Web Terminal

A (unsafe) technical demo to export a shell to web browser.

This program is written in the go programming language, using the Gin web framework, gorilla/websocket, pty, and xterm.js! The workflow is simple, the client will initiate a terminal window (xterm.js) and create a websocket with the server. On the server side, it serves the basic HTML/JS/CSS files and websockets (by shovling the data between pty and xterm).

It is amazing what you can do with less than 200 lines of go code.

It is just a simple demo in case some people are interested in how to setup xterm.js with websocket.

NOTE

Do NOT run this in an untrusted network. You will expose your shell to anyone that can access your network and Do NOT leave the server running.

Here is a screenshot: