The Service‑First REST Client for Microservices.
XRest organizes APIs as versioned "services" with built-in environment management, safe/unsafe execution controls, and optional auth pre‑flight—making microservice workflows repeatable, shareable, and safe.
- Service‑First Hierarchy: Organize APIs as first-class Services instead of loose collections. Each service carries its own environments and authentication logic.
- Git‑Native Collaboration: All data (services, environments, endpoints) is stored in human-readable YAML. Sync changes across your team using GitHub/GitLab as your source of truth.
- Guardrails for Production: Mark environments (like
PROD) as Unsafe. XRest enforces visual cues (red UI) and mandatory confirmation dialogs before executing destructive requests. - Automated Pre‑flight Auth: Stop copy-pasting tokens. Define auth endpoints that automatically acquire, cache, and inject Bearer tokens into your requests.
- Request Versioning: Track the evolution of your API contracts with built-in versioning for every endpoint.
- Zero-Cloud Privacy: XRest is local-first. Your API keys, internal URLs, and payloads never leave your machine or your private Git repository.
- Core: Tauri & Rust
- Frontend: Vue 3, TypeScript
- Styling: Tailwind CSS, Shadcn UI Vue
- State Management: Pinia
- Build Tool: Vite
XRest follows a "Configuration as Code" philosophy.
Stored in the application directory:
- macOS:
~/Library/Application Support/io.ak.xrest/ - Windows:
%APPDATA%/io.ak.xrest/ - Linux:
~/.config/io.ak.xrest/
Each service stores its data in a dedicated directory of your choice:
your-service-directory/
├── service.yaml # Core service configuration
├── environments.yaml # Environment variables (DEV, STAGE, PROD)
└── endpoints/ # API request templates (*.yaml)
- Node.js (v18+)
- Rust (latest stable)
- pnpm
# Install dependencies
pnpm install
# Run in development mode
pnpm tauri dev
# Build production bundle
pnpm tauri buildcodesign --force --sign - --options runtime --timestamp src-tauri/target/release/bundle/dmg/xrest_*.dmg
codesign --verify --deep --strict --verbose src-tauri/target/release/bundle/dmg/xrest_*.dmgNote: xrest is currently in active development and is not yet ready for production use. Use at your own risk.