Getting Started
Welcome to Veyak (वेयक) — a modern, lightweight, and fast desktop API client built with Tauri 2, Rust, and React 19. This guide will get you up and running in minutes.
Prerequisites
Before you begin, ensure you have the following installed:
| Requirement | Version | Notes |
|---|---|---|
| Node.js | 18+ | Or use Bun |
| Bun | Latest | Recommended package manager |
| Rust | 1.70+ | Required for building Tauri |
| Xcode CLT | Latest | macOS only |
Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Install Bun
curl -fsSL https://bun.sh/install | bash
Installation
Option 1 — Download Binary (Recommended)
Head to the GitHub Releases page and download the latest binary for your platform:
- macOS —
.dmgor.app.tar.gz - Linux —
.AppImageor.deb - Windows —
.msior.exe
Option 2 — Build from Source
- Clone the repository
git clone https://github.com/iamdhakrey/veyak.git
cd veyak
- Install dependencies
bun install
- Start the development server
bun run tauri dev
This starts the Vite dev server and opens the native Tauri window.
- Build for production
bun run tauri build
The built application will be in src-tauri/target/release/bundle/.
Your First Request
Once Veyak is open, follow these steps to make your first HTTP request:
1. Create a new request tab
Click the + button in the tab bar, or press Cmd+T (macOS) / Ctrl+T (Windows/Linux).
2. Set the method and URL
- Select GET from the method dropdown
- Type a URL:
https://jsonplaceholder.typicode.com/posts/1
3. Send the request
Click the Send button, or press Cmd+Enter / Ctrl+Enter.
4. View the response
The response panel shows:
- Status —
200 OK - Time — request duration in milliseconds
- Size — response body size
- Headers tab — all response headers
- Body tab — syntax-highlighted JSON response
Interface Overview
┌─────────────────────────────────────────────────────────────┐
│ [Workspace: Default ▾] [Cmd+P / Palette] [User Profile]│
├──────────────────────────────────────────────────────────────┤
│ [Tab 1: GET users] [Tab 2: gRPC Greeter] [+] │
├────────────────┬─────────────────────────────────────────────┤
│ Sidebar │ [GET ▾] [https://api.example.com] [Send] │
│ - Collections │ [Params] [Headers] [Cookies] [Auth] [Body] │
│ - Folders │ ───────────────────────────────────────── │
│ - REST / WS │ Response: │
│ - gRPC │ Status: 200 OK Time: 42ms Size: 1.2KB │
│ - History │ [Body] [Headers] [Cookies] [Raw] │
│ - Environments│ │
└────────────────┴─────────────────────────────────────────────┘
Automatic Updates
Veyak comes with a built-in auto-updater. On startup, Veyak checks the official release registry:
- When a new version is published, an update prompt appears showing release notes and version information.
- If accepted, Veyak downloads the update payload in the background with a visual progress bar.
- Once downloaded, Veyak automatically restarts into the updated build without losing your open tabs or active workspace state.
Next Steps
- Workspaces — Isolate projects, environments, and collections
- HTTP Methods — Learn about all supported HTTP methods
- gRPC Client — Test gRPC services with reflection and streaming
- WebSocket — Connect to raw WS and GraphQL subscriptions
- Authentication — API auth and Veyak desktop user sync
- Cookies — Manage request and response cookies
- Environments — Manage variables across environments
- Settings & Customization — System fonts, proxy, and TLS validation
- Architecture & Crates — Learn about the Rust modular workspace
- Keyboard Shortcuts — Speed up your workflow