UglyPTY - A PyQt6-based SSH client.
Project description
UglyPTY
UglyPTY is a graphical terminal emulator built with Python and PyQt6. It provides a user-friendly interface for managing and establishing SSH connections, with some great productivity of features.
Note: This is a VERY beta release with a lot of functionality.
Features
-
Session Manager: Leverage the sessions you use in your Terminal environment in your automation scripts (examples included).
- Create, edit, or delete sessions with specific settings.
- Supports password and key based authentication.
-
Credentials Manager: Safely manage your user credentials.
- Passwords are encrypted.
- Fetch all credentials or a specific credential by ID from a SQLite database (
settings.sqlite
).
-
Themed Views: Multiple theme modes - light, dark, light-dark, and dark-light.
-
Tab Management: Handle multiple SSH connections across different tabs.
External Libraries
UglyPTY uses the widget library from UglyWidgets.
- UglyWidgets is a collection of useful PyQt6 re-usable widgets for building automation GUI interfaces. The POC application provides a graphical interface for full embedded ssh client with xterm.js support, a fully functional embedded windows terminal - supports cmd.exe, powershell.exe or wsl.exe, FileTree browsing files and editing files, based on the ACE.js editor, built using the PyQt6 framework.
Installation
-
Tested with Python 3.9.13 for Windows. Other versions might work.
-
Use PyPi
-
Install the required packages using
pipenv
(or userequirements.txt
with pip/venv):pipenv shell pipenv install uglypty
To start the application, navigate to the activated virtual directory, local keys, your session database, and log files will be here:
python or pythonw -m uglypty
Screenshots
Here are some snapshots of UglyPTY in action:
Enjoy using UglyPTY!
Package Distribution
# Create a source distribution and a wheel
python setup.py sdist bdist_wheel
# Set up a new virtual environment
python -m venv test_env
# Activate the virtual environment
source test_env/bin/activate # On Linux/Mac
test_env\Scripts\activate # On Windows
# Install the wheel
pip install dist/uglypty-0.1-py3-none-any.whl
# Test your script
python or pythonw -m uglypty
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.