A relay management client
Project description
Nostpy GUI
Nostpy GUI is a relay management client built with Tkinter. It provides an interface to manage relays, enter private and public keys, and query relay allowlists.
Features
- Enter and save relay private/public keys and relay URLs.
- Manage relay allowlists.
- Query relay allowlists.
- Dark mode interface.
Requirements
- Python 3.7 or higher
Installation
Option 1: Install from PyPI
To install Nostpy GUI using pip:
pip install nostpy-gui
Once installed, you can start the application by simply running:
nostpy-gui
Option 2: Build and Install Locally
If you prefer to build the project locally:
- Clone the repository:
git clone https://github.com/UTXOnly/nostpy-gui.git
cd nostpy-gui
- Install dependencies:
Ensure that you have setuptools
and wheel
installed:
pip install setuptools wheel
- Build the package:
Build the package using the following command:
python3 -m build
- Install the package:
Once built, install the package locally:
pip install dist/nostpy_gui-*.whl
- Run the application:
After installation, start the application:
nostpy-gui
Usage
Once the application is running:
1. Enter Keys and Relay Information:
- Enter your relay's admin private key and public key in the designated fields
- Provide the relay URL.
2. Save the Information:
- Click "Save Keys and Relay" to store the entered data for the duration of the session
- Not stored on disk for security so you will need to enter this every time you open the client
3. Manage Relay Allowlist:
- Use the "Manage Relay Allowlist" button to modify the allowlist for the relay
- Can use to ban pubkeys or events (need to use pubkey hex, workign on adding
npub/nsec
support)
- Can use to ban pubkeys or events (need to use pubkey hex, workign on adding
4. Query Relay Allowlist:
- Use the "Query Relay Allowlist" button to view the current allowlist for the relay
Troubleshooting
This package installes cleanly on Linux systems but tkinter
is a bit finnicky on Macs and would help to run the package from a virtual environment to ensure all dependencies are met. Otherwise you might get errors like this one:
~/nostpy-gui UTXOnly/pypackagebuild*
venv ❯ nostpy-gui
Traceback (most recent call last):
File "/opt/homebrew/bin/nostpy-gui", line 5, in <module>
from nostpy_gui.main import main
File "/opt/homebrew/lib/python3.10/site-packages/nostpy_gui/main.py", line 1, in <module>
import tkinter as tk
File "/opt/homebrew/Cellar/python@3.10/3.10.14_1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/tkinter/__init__.py", line 37, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
Create a virtual environment:
python3 -m venv nostpy-env
source nostpy-env/bin/activate # On Windows use `nostpy-env\Scripts\activate`
Install the required dependencies:
Install the package in your virtual environment:
pip install nostpy-gui
- Note you may need to deactivate and reactivate your virtual environment after installing package
- You can run
deactivate
while in thenostpy-env
birtual environment and thensource nostpy-env/bin/activate
to reactivate
- You can run
Contributing
If you'd like to contribute to the project, feel free to open a pull request or file an issue on the GitHub repository: https://github.com/UTXOnly/nostpy-gui
License
This project is licensed under the MIT License. See the LICENSE
file for more details.
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.
Source Distribution
Built Distribution
Hashes for nostpy_gui-0.1.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c776e9fd0e53f25e4e0ee334bcc8caa2d42eac973bead8245e3881a7b0b3912 |
|
MD5 | 146638259f90aa7620453ffc5a30a15e |
|
BLAKE2b-256 | ebef7abc2c816ccad96fe3ebb78d2ab475d0f88c04462f6e1b642bef15b17b90 |