Include main interface, history, and variables screenshots. Remove old sensitive variables documentation files.
121 lines
3.2 KiB
Markdown
121 lines
3.2 KiB
Markdown
# 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 with syntax highlighting
|
|
- Track request history with persistence
|
|
- Organize requests into projects
|
|
- Environment variables with secure credential storage
|
|
- JavaScript preprocessing and postprocessing scripts
|
|
- Export requests (cURL and more)
|
|
- GNOME-native UI
|
|
|
|
## Screenshots
|
|
|
|
### Main Interface
|
|

|
|
|
|
### Request History
|
|

|
|
|
|
### Environment Variables
|
|

|
|
|
|
## Quick Start
|
|
|
|
### Installation
|
|
|
|
**Build from source:**
|
|
```bash
|
|
git clone https://git.bugsy.cz/beval/roster.git
|
|
cd roster
|
|
meson setup builddir
|
|
meson compile -C builddir
|
|
sudo meson install -C builddir
|
|
```
|
|
|
|
**Flatpak:**
|
|
```bash
|
|
flatpak-builder --user --install --force-clean build-dir cz.bugsy.roster.json
|
|
flatpak run cz.bugsy.roster
|
|
```
|
|
|
|
See the [Installation Guide](https://git.bugsy.cz/beval/roster/wiki/Installation) for detailed instructions.
|
|
|
|
### Usage
|
|
|
|
Launch Roster from your application menu or run `roster` from the command line.
|
|
|
|
See the [Getting Started Guide](https://git.bugsy.cz/beval/roster/wiki/Getting-Started) for a walkthrough.
|
|
|
|
Complete documentation is available in the [Wiki](https://git.bugsy.cz/beval/roster/wiki):
|
|
|
|
## Key Features
|
|
|
|
### Multi-Environment Support
|
|
|
|
Manage multiple environments (development, staging, production) with different variable values. Switch environments with one click.
|
|
|
|
[Learn more about Variables](https://git.bugsy.cz/beval/roster/wiki/Variables)
|
|
|
|
### Secure Credential Storage
|
|
|
|
Store API keys, passwords, and tokens securely in GNOME Keyring with one-click encryption. Regular variables are stored in JSON, while sensitive variables are encrypted.
|
|
|
|
[Learn more about Sensitive Variables](https://git.bugsy.cz/beval/roster/wiki/Sensitive-Variables)
|
|
|
|
### JavaScript Automation
|
|
|
|
Use preprocessing and postprocessing scripts to:
|
|
- Extract authentication tokens from responses
|
|
- Add dynamic headers (timestamps, signatures)
|
|
- Chain requests together
|
|
- Validate responses
|
|
|
|
[Learn more about Scripts](https://git.bugsy.cz/bavel/roster/wiki/Scripts)
|
|
|
|
## Dependencies
|
|
|
|
### Runtime
|
|
- GTK 4
|
|
- libadwaita 1
|
|
- Python 3
|
|
- libsoup3 (provided by GNOME Platform)
|
|
- libsecret (provided by GNOME Platform)
|
|
- GJS (GNOME JavaScript)
|
|
|
|
### Build
|
|
- Meson (>= 1.0.0)
|
|
- Ninja
|
|
- pkg-config
|
|
- gettext
|
|
|
|
See the [Installation Guide](https://git.bugsy.cz/beval/roster/wiki/Installation) for platform-specific dependencies.
|
|
|
|
## Platform
|
|
|
|
Roster is built specifically for the GNOME desktop using native technologies:
|
|
- **GTK 4** - Modern UI toolkit
|
|
- **libadwaita** - GNOME design patterns
|
|
- **libsoup3** - HTTP networking
|
|
- **libsecret** - Secure credential storage
|
|
- **GJS** - JavaScript runtime for scripts
|
|
|
|
## License
|
|
|
|
GPL-3.0-or-later
|
|
|
|
## Support
|
|
|
|
- **Issues**: [git.bugsy.cz/beval/roster/issues](https://git.bugsy.cz/beval/roster/issues)
|
|
- **Wiki**: [git.bugsy.cz/beval/roster/wiki](https://git.bugsy.cz/bavel/roster/wiki)
|
|
- **Source**: [git.bugsy.cz/beval/roster](https://git.bugsy.cz/beval/roster)
|
|
|
|
## Contributing
|
|
|
|
Contributions are welcome! Please open an issue or pull request.
|