A modern, cross-platform REST API client built with Avalonia UI and .NET 9. RestWave provides an intuitive interface for testing and managing REST API requests with collection organization and advanced features.
- Native Cross-Platform Performance: Built with .NET and Avalonia UI - no Electron, no browser overhead, just fast native performance on Windows, macOS, and Linux
- Fully Offline with Local Storage: Works completely offline with collections stored as files on your local file system - own your data, sync with Git, backup however you want
- Server-Sent Events (SSE) Support: Real-time streaming response handling with automatic parsing, grouping, and live updates
- Hierarchical Organization: Organize requests in nested folders that map directly to your file system structure
- Developer-Friendly: Keyboard shortcuts, request cloning, syntax highlighting, and JSON formatting for efficient workflow
- Privacy-First: No telemetry, no cloud dependencies, no data collection - your API tests stay on your machine
Coming Soon
- .NET 9.0 or later
- Windows, macOS, or Linux
- Clone the repository:
git clone https://github.com/avi1989/restwave.git
cd restwave- Build the application:
dotnet build RestWave.sln- Run the application:
dotnet run --project RestWaveBinary releases will be available soon
- Launch RestWave
- Enter your API endpoint URL
- Select the HTTP method (GET, POST, PUT, DELETE)
- Add headers if needed
- For POST/PUT requests, add your JSON body in the editor
- Click the "Invoke" button or press F5 to send the request
- View the response in the response panel
- Create a new collection from the File menu
- Add requests to collections for better organization
- Use nested folders to create hierarchical structures
- Collections are automatically saved and persist between sessions
Ctrl+S: Save current requestF5: Send/Submit current requestCtrl+N: Create new request
Access settings to:
- Change application theme (Light/Dark/System)
- Configure requests directory path
- Manage other preferences
RestWave is built using:
- Framework: .NET 9.0
- UI Framework: Avalonia UI 11.3.2
- Architecture Pattern: MVVM with CommunityToolkit.Mvvm
- Text Editor: AvaloniaEdit with TextMate support for syntax highlighting
- Styling: Fluent Design with Inter font family
RestWave/
├── Models/ # Data models and configuration
├── ViewModels/ # MVVM view models
├── Views/ # UI views and controls
├── Services/ # Business logic and data services
├── Assets/ # Images, icons, and resources
└── Styles/ # Application styling and themes
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test them
- Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- Ensure you have .NET 9.0 SDK installed
- Clone the repository
- Open
RestWave.slnin your favorite IDE (Visual Studio, Rider, VS Code) - Build and run the project
- Follow C# coding conventions
- Use meaningful variable and method names
- Add XML documentation for public APIs
- Ensure proper error handling
- ✨ Collection Management: Refactored collection list for better organization
- 🔧 Configuration: Fixed ConfigManager loading issues
- 📋 Request Cloning: Added option to clone existing requests
- 🎨 JSON Formatting: Implemented format button for JSON responses
- 📱 Menu Integration: Added new request/collection options in menubar
- ⚙️ Settings Panel: Implemented comprehensive settings management
- 🎯 Nested Collections: Support for hierarchical request organization
- ⌨️ Hotkeys: Save and submit request keyboard shortcuts
This project is licensed under the MIT License - see the LICENSE file for details.
- Import/Export collections (Postman, Insomnia formats)
- Environment variables support
- Tabbed Interface
- GraphQL support
- WebSocket testing
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue if your problem isn't already reported
- Provide detailed information about your environment and the issue
- Built with Avalonia UI - Cross-platform .NET UI framework
- Powered by .NET 9 - Modern development platform
- Icons and design inspired by modern REST client applications