A modern desktop webhook inspector for developers.
Sonar 2.4.0 brings full mobile support with a responsive layout.
- Mobile Adaptation: Fully responsive layout for mobile devices.
- Refined UI: Improved request list and action buttons.
For detailed release notes and version history, see CHANGELOG.md.
- Native Experience: Built with Vala, GTK4, and Libadwaita for a native GNOME feel.
- Request Inspection: Detailed breakdown of HTTP headers, payload, and query params.
- Search & Filter: Powerful filtering by method, content-type, and full-text search.
- Request Replay: Resend any captured webhook to custom URLs.
- Templates: Save requests as reusable templates for testing.
- Keyboard Shortcuts: Comprehensive shortcuts for productivity (
Ctrl+?). - Dark Mode: Fully supports system-wide dark theme preference.
- Encrypted Storage: Credentials never stored in plain text.
- DoS Protection: Built-in rate limiting traversal protection.
- Safe Forwarding: SSRF prevention and signature validation.
# Clone the repository
git clone https://github.com/tobagin/sonar.git
cd sonar
# Build and install development version
./scripts/build.sh --dev --install
flatpak run io.github.tobagin.sonar.DevelRequirements: Vala, GTK4, Libadwaita, libsoup 3.0, json-glib, libgee, libsecret, Meson.
git clone https://github.com/tobagin/sonar.git
cd sonar
meson setup builddir
meson compile -C builddir
meson install -C builddirLaunch Sonar from your applications menu or run:
flatpak run io.github.tobagin.sonar.Devel- Start Tunnel: Click "Start Tunnel" to create a public URL.
- Configure: Use the URL in your webhook provider.
- Inspect: Watch requests arrive in real-time.
- Open the menu and select Mock Response (or press
Ctrl+M). - Enable mocking and configure the desired status code and body.
- Incoming requests will now receive your simulated response.
Ctrl+T- Start/Stop TunnelCtrl+U- Copy Public URLCtrl+L- Clear RequestsCtrl+H- Toggle HistoryCtrl+M- Mock Response DialogCtrl+,- PreferencesF1- About
Sonar is built using modern GNOME technologies:
- Vala: For high performance and type safety.
- GTK4 / Libadwaita: For the user interface.
- libsoup 3: For robust HTTP server/client capabilities.
- JSON-GLib: For efficient JSON parsing and generation.
Sonar is designed to respect your privacy and security:
- Local First: All request data is stored locally on your machine.
- Encrypted Secrets: Auth tokens are stored in the system keyring.
- Sandboxed: Distributed as a Flatpak with strict permissions.
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
- Reporting Bugs: GitHub Issues
- Discussions: GitHub Discussions
Sonar is licensed under the GNU General Public License v3.0.
- ngrok: For providing the tunneling service.
- GNOME: For the excellent GTK4 and Libadwaita frameworks.
- Vala: For the powerful programming language.
| Main Window | Tunnel Started | Received Requests |
|---|---|---|
![]() |
![]() |
![]() |
| History View | Clear Data | About Dialog |
|---|---|---|
![]() |
![]() |
![]() |
Sonar - A modern desktop webhook inspector for developers.






