1. Modified indicator (*) now shows: - Added GObject signal 'modified-changed' to RequestTabWidget - Connect to signal in window.py to update tab page indicator - Indicator shows dot-symbolic icon when modified 2. History panel now visible and populated: - Restored history panel in main-window.ui with vertical paned layout - Added _load_history() call back to __init__ - History entries now display in bottom panel 3. Saving requests now works: - Fixed on_save_request_clicked to get request from widget.get_request() - Removed dependency on obsolete _build_request_from_ui method 4. Loading saved requests fixed: - Updated _on_load_request to properly update widget and tab page - Correctly sets widget.original_request and widget.modified - Updates tab page title when loading into empty tab - Properly handles copy vs. linked request logic All issues from user testing are now resolved!
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%