# HTTPMan - Fast HTTP Client
Lighning fast http client, free, no-login, crapfree built with Rust and egui. Features tab management, request persistence, and a hierarchical file system for organizing saved requests.
## Features
- 🚀 **Fast & Responsive** - Built with Rust and egui for native performance
- 📑 **Tab Management** - Multiple requests in tabs with session restoration
- 🗂️ **File Organization** - Hierarchical file tree for saved requests
- 💾 **Auto-Persistence** - Automatic saving of tabs and settings
- 🌍 **Cross-Platform** - Works on Linux, macOS, and Windows
- 📱 **Modern UI** - Resizable sidebar, context menus, drag & drop
- 🔗 **Rich Responses** - JSON tree view, images, binary file handling
- 📋 **Request Templates** - Pre-configured examples for common APIs
## Quick Start
### Install from Crates.io
```bash
cargo install httpman
httpman
```
### Build from Source
```bash
git clone https://github.com/mustakimali/httpman
cd httpman
cargo run --release
```
## Usage
1. **First Run** - Launch the app to see example tabs (Bitcoin API, Random Image)
2. **Make Requests** - Select method, enter URL, add headers/body, click Send
3. **Save Requests** - Right-click tab → "Save As..." to store permanently
4. **Organize** - Create folders in the left sidebar, drag requests to organize
5. **Load Saved** - Click any saved request file to open as new tab
## Storage
Data is stored in OS-specific directories:
- **Linux**: `~/.local/share/httpman/`
- **macOS**: `~/Library/Application Support/com.httpman.httpman/`
- **Windows**: `%APPDATA%\httpman\httpman\data\`
## Keyboard Shortcuts
| New tab | Click `+` |
| Close tab | Double-click, middle-click, or right-click → Close |
| Save tab | Right-click → Save As... |
| Rename folder | Double-click folder name |
| New folder | Right-click in tree area |
## License
MIT License - see [LICENSE](LICENSE) for details.
## Contributing
Contributions welcome! Please read [CLAUDE.md](CLAUDE.md) for detailed architecture documentation.
---
Built with ❤️ using Rust and egui