A cross-platform desktop HTTP client built with Avalonia UI. Organise requests into collections, send them, inspect responses, and save everything locally — no account required.
- Tabbed requests — open multiple requests side by side, duplicate tabs, quick-save
- Collections & folders — organise saved requests, rename, delete, import/export
- Query params ↔ URL sync — edit either the URL bar or the params panel; both stay in sync
- Request headers — autocomplete on common HTTP header names, pre-populated defaults
- Response viewer — formatted JSON, raw view, response headers, response time & size
- Import / Export — native JSON format and Postman v2.1 collections
- Light & dark themes — follows the system preference via Avalonia FluentTheme
| Dependency | Version | Purpose |
|---|---|---|
| .NET | 10.0 | Runtime and SDK |
| Avalonia | 11.2.3 | Cross-platform UI framework |
| Avalonia.Themes.Fluent | 11.2.3 | Fluent design theme (light & dark) |
| Avalonia.Fonts.Inter | 11.2.3 | Inter font family |
| CommunityToolkit.Mvvm | 8.3.2 | MVVM source generators (ObservableProperty, RelayCommand, …) |
NuGet packages are restored automatically on build — no manual installation is needed beyond the .NET SDK.
| Platform | Notes |
|---|---|
| Windows 10 / 11 | Native Win32 backend |
| macOS 12+ | Native AppKit backend |
| Linux | X11 or Wayland; requires a working desktop environment |
Download and install the SDK for your platform from https://dotnet.microsoft.com/download/dotnet/10.0.
Verify the installation:
dotnet --version
# should print 10.x.xgit clone https://github.com/jsiulian/InspectorAPI.git
cd InspectorAPIdotnet restoredotnet run --project InspectorAPI.DesktopThis builds in Debug configuration (includes the Avalonia visual debugger overlay on F12).
dotnet build -c ReleaseReplace <RID> with the runtime identifier for your target platform:
| Platform | RID |
|---|---|
| Windows x64 | win-x64 |
| Windows ARM64 | win-arm64 |
| macOS Apple Silicon | osx-arm64 |
| macOS Intel | osx-x64 |
| Linux x64 | linux-x64 |
| Linux ARM64 | linux-arm64 |
dotnet publish InspectorAPI.Desktop -c Release -r <RID> --self-contained trueThe output lands in:
InspectorAPI.Desktop/bin/Release/net10.0/<RID>/publish/
InspectorAPI/
├── InspectorAPI.sln
├── InspectorAPI.Core/ # Platform-independent logic
│ ├── Models/ # Data models (Collection, SavedRequest, …)
│ ├── Services/ # HTTP client, collection persistence, Postman converter
│ └── ViewModels/ # MVVM view models (MainViewModel, RequestTabViewModel, …)
└── InspectorAPI.Desktop/ # Avalonia desktop application
├── Assets/ # Application icon
├── Converters/ # Value converters (method badge colours, …)
└── Views/
├── MainWindow.axaml # Single-window UI — layout, styles, theme resources
└── MainWindow.axaml.cs # Code-behind (file picker, keyboard shortcuts, focus)
Collections are saved as JSON files in the platform application-data directory:
| Platform | Path |
|---|---|
| Windows | %APPDATA%\InspectorAPI\collections\ |
| macOS | ~/Library/Application Support/InspectorAPI/collections/ |
| Linux | ~/.config/InspectorAPI/collections/ (or $XDG_CONFIG_HOME/InspectorAPI/collections/) |