{"library":"rocky","title":"Rocky","description":"A full-featured, middleware-oriented HTTP/S and WebSocket proxy with traffic replay, load balancing, routing, and retry/backoff. Current stable version is 0.4.16, last updated July 2020. It is built on top of http-proxy and supports both command-line and programmatic usage. Key differentiators include a hierarchical middleware layer, path-based routing with params, concurrent/sequential traffic replay, and connectivity with Connect/Express middleware. Compared to alternatives like http-proxy or http-mitm-proxy, Rocky provides a higher-level abstraction with built-in balancer and retry logic. The project is in maintenance mode; no major releases since 2020.","language":"javascript","status":"maintenance","last_verified":"Sat Apr 25","install":{"commands":["npm install rocky"],"cli":{"name":"rocky","version":null}},"imports":["const rocky = require('rocky')","const balancer = require('rocky').balancer","const Rocky = require('rocky'); const proxy = Rocky(); proxy.use((req, res, next) => next())"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"const rocky = require('rocky');\nconst proxy = rocky();\n\n// Forward all traffic to httpbin\nproxy\n  .target('http://httpbin.org')\n  .forward(async (req, res, next) => {\n    console.log('Forward request:', req.url);\n    await next();\n  })\n  .replay(async (req, res, next) => {\n    console.log('Replay response:', res.statusCode);\n    await next();\n  });\n\nproxy.listen(3000, () => {\n  console.log('Rocky proxy listening on port 3000');\n});\n\n// Test: curl -x http://localhost:3000 http://httpbin.org/get","lang":"javascript","description":"Sets up a simple HTTP proxy that forwards all traffic to httpbin.org, with middleware hooks for forward and replay phases.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}