butterfly – web terminal based on websocket and tornado

Last Updated on February 22, 2021

The terminal is a program that you use to type in commands. It’s a text input/output environment.

The terminal window allows the user to access a console and all its applications such as command line interfaces (CLI) and text user interface software. Even with the sophistication of modern desktop environments packed with administrative tools, other utilities, and productivity software all sporting attractive graphical user interfaces, it remains the case that some tasks are still best undertaken with the command line.

butterfly is an xterm compatible terminal that runs in your web browser.


You should have Python 3 installed on your system. There’s a number of ways to install butterfly. First, check if your distribution offers a convenient package. For example, there’s a package for butterfly in the Arch User Repository.

You can also install the software with pip3, the package installer for Python, but if you’re going down this avenue, we’d recommend using pipx. pipx uses pip and is made specifically for application installation, as it adds isolation yet still makes the apps available in your shell.

On an Ubuntu installation, we can install pipx with the command.

$ sudo apt install pipx python3-venv

You’ll notice we’ve appended python3-venv to that command. venv (for Python 3) and virtualenv (for Python 2) allow you to manage separate package installations for different projects. They essentially allow you to create a “virtual” isolated Python installation and install packages into that virtual installation. When you switch projects, you can simply create a new virtual environment and not have to worry about breaking the packages installed in the other environments.

Install butterfly with the command:

$ pipx install butterfly

Next page: Page 2 – In Operation

Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – Summary

Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Comment
Newest Most Voted
Inline Feedbacks
View all comments
6 months ago

hello, im trying to connect butterfly but with lets encrypt cert getting :
[W 240105 16:08:15 iostream:1405] SSL Error on 7 (‘xxxxxxxx’, 2929): [SSL: PEER_DID_NOT_RETURN_A_CERTIFICATE] peer did not return a certificate (_ssl.c:1056), how can i fix this ?