Gopher-Glide (gg) π
Unleash The Hive. Destroy your servers, not your RAM.
π€·ββοΈ Why not just use wrk, k6, or JMeter?
If you want to run a quick concurrency test on an endpoint, you usually have to write a custom JavaScript file for k6, a Python script for Locust, or learn a heavy configuration language.
Gopher-Glide (gg) is a modern, open-source API traffic simulator that lets you skip the boilerplate. It directly executes standard IDE .http REST Client files that you probably already have sitting in your workspace.
| Feature |
Gopher-Glide (gg) |
k6 / Locust |
wrk / hey |
| Scripting |
None (Reads .http natively) |
JavaScript / Python |
None (CLI flags only) |
| Traffic Control |
Live Interactive TUI |
Requires configs |
Fixed concurrency only |
| CI/CD Assertions |
Semantic JSON Diffing |
Pass/Fail Thresholds |
Raw latencies only |
| Performance |
30k+ RPS |
Medium-High |
Extremely High |
π Read the Full Documentation at gopherglide.dev
β‘ 30-Second Quickstart
1. Install via Homebrew
brew install shyam-s00/tap/gg
2. Point it at any .http file
Create a simple api.http file (or use an existing one from your IDE):
GET http://localhost:8080/health
Accept: application/json
3. Run the simulation
Use a built-in profile to automatically shape the traffic (e.g., ramping up, sustaining, and cooling down):
gg --profile flash-sale --http-file api.http
You will instantly drop into the newly polished, premium Interactive Chaos TUI where you can monitor latencies and adjust the load in real-time.
π Feature Deep-Dives
π The Hive Engine (Zero-Allocation Architecture)
The core of gg is built on a pure-Go lock-free Actor Model. By isolating connections into ultra-lightweight Goroutines and tracking metrics via sharded lock-free atomics, gg operates at 0 allocs/op on the hot path. This means you can comfortably push over 30,000+ RPS on a standard developer machine without garbage-collection pauses destroying your latency percentiles.
βοΈ Benchmark: At 30,000 RPS target load, gg consumes 40% less memory (1.42 GB vs 2.38 GB) and delivers 3x more successful requests than k6. gg's dynamic Adaptive Backpressure acts as an intelligent edge proxyβgracefully throttling excess traffic when the target server breaks to ensure maximum goodput. Read the full benchmark breakdown to see how gg safely simulates massive traffic.
π¬ X-Ray Vision for APIs (gg snap)
Know exactly why you broke production, not just when. By passing the --snap flag, Gopher-Glide infers your API's JSON schema in real-time. You can then use gg snap diff in your CI/CD pipeline to compare two snapshots side-by-side to instantly spot missing fields, type changes, or massive payload bloat.
π IDE Integration
Gopher Glide has official plugins for JetBrains (IntelliJ, GoLand, WebStorm, Rider, and more) and VS Code (also available on Open VSX for VSCodium, Gitpod, and other compatible editors). Both plugins bring the full gg workflow into your editor β run profiles directly from any .http file, watch a live RPS/latency dashboard, and explore semantic snapshot diffs, all without touching a terminal.
No more writing custom JavaScript to test multi-step workflows. gg natively understands JetBrains HTTP variable extraction syntax. You can authenticate, extract a token using @gg-export, and instantly inject it into the next request using \{\{token\}\}.
Planned Features
- Chaos / Fault Injection β Simulate poor network conditions (3G packet loss, latency jitter) to see how APIs handle degradation.
- Distributed Simulation Mesh β Run
gg worker nodes across multiple servers/regions, controlled by a central gg master UI.
License
MIT