Skip to content

Orb

Modern and powerful HTTP tools built with Rust. Supports HTTP/1.1, HTTP/2, HTTP/3, and WebSockets.

Modern Protocols

Full support for HTTP/1.1, HTTP/2, and HTTP/3 (QUIC). Automatically negotiates the best protocol or force a specific version.

WebSocket Support

Connect to WebSocket servers with ws:// and wss:// URLs. Interactive mode for sending messages or script-friendly single-message mode.

cURL Compatible

Familiar command-line interface inspired by cURL. Easy migration with similar options like -H, -d, -X, -u, and more.

Built with Rust

Fast, memory-safe, and cross-platform. Single binary with no runtime dependencies.

Terminal window
# Simple GET request
orb https://api.example.com/users
# POST with JSON data
orb https://api.example.com/users -X POST --json '{"name": "Alice"}'
# Force HTTP/3
orb https://example.com --http3
# WebSocket connection
orb wss://echo.websocket.org --ws-message "Hello!"
FeatureOrbcURL
HTTP/1.1
HTTP/2
HTTP/3 (QUIC)✓ (experimental)
WebSocket
JSON shorthand--json-H + -d
Progress bar
Compressionzstd, br, gzip, deflategzip, deflate, br
Cookie jar
Multipart forms
Proxy supportHTTP, SOCKS5HTTP, SOCKS4/5
mTLS

A powerful mock HTTP server library for testing Rust applications. Supports HTTP/1.1, HTTP/2, HTTP/3, and WebSockets.

use orb_mockhttp::TestServerBuilder;
let server = TestServerBuilder::new().with_tls().build();
server.on_request("/api/users")
.expect_method("GET")
.respond_with(200, r#"{"users": []}"#);
// Use server.url("/api/users") in your tests