Replace HTTPie subprocess calls with native libsoup3 async API. This eliminates external dependencies and uses GNOME-standard async patterns. Changes: - Rewrite http_client.py to use libsoup3 Session and Message APIs - Replace threading with GLib async callbacks in window.py - Remove HTTPie dependency from Flatpak manifest - Update documentation to reflect libsoup3 usage Benefits: - No external dependencies (HTTPie removed) - Native GLib async integration (no threading complexity) - Better performance with connection pooling and HTTP/2 support - Cleaner codebase following GNOME development patterns
Roster
A modern HTTP client for GNOME, built with GTK 4 and libadwaita.
Features
- Send HTTP requests (GET, POST, PUT, DELETE)
- Configure custom headers and request bodies
- View response headers and bodies
- Track request history with persistence
- Beautiful GNOME-native UI
Dependencies
- GTK 4
- libadwaita 1
- Python 3
- HTTPie (http command)
Building
meson setup builddir
meson compile -C builddir
sudo meson install -C builddir
Usage
Roster uses HTTPie as the backend for making HTTP requests. Ensure HTTPie is installed:
pip install httpie
# or on Fedora
sudo dnf install httpie
Then run Roster from your application menu or with the roster command.
Description
Languages
Python
98.6%
Meson
1.4%