WebTTY

A Swiss Army knife that provides secure tunnels to localhost and allows you to share your terminal as a web application.

What is WebTTY?

WebTTY is a lightweight commandline utility that allows you to share applications and serivces running on localhost to the Internet.

WebTTY is not just that! It is a bundle of many more features and thus is rightly called the Swiss Army knife.

Who can use WebTTY?

WebTTY is for everyone! Teachers can mirror their terminals for students to learn; spawn multiple shells for students to have hands-on experience even without having the required environment on their computer. Developers can work collaboratively by tunneling localhost. Machine Learning enthusiasts and data scientists can share their Jupyter Notebooks running on localhost! File sharing for everyone. From a developer to an ordinary computer user, WebTTY extends its features to all.

Building from Source

Building WebTTY requires you to download the Python modules mentioned in the requirements.txt. Currently it is built in Python 2, and will be ported soon to Python 3. Download them with -


webtty@webtty$ pip install -r requirements.txt

After all the modules are installed successfully, run WebTTY with -


webtty@webtty$ python2 run.py 

How does WebTTY work?

WebTTY uses Web Sockets for asynchronous communication with the terminal running on your machine. It uses HTTP Tunneling to forward network packets of other services like SSH over the HTTP. WebTTY bypasses Firewall restrictions that prevents port forwarding for machines inside a secure network.

Things Yet to be Implemented

Authors

Chaitanya Rahalkar

Dhaval Gujar

Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

License

Copyright © 2019 Chaitanya Rahalkar.
This project is MIT licensed.