
resterm v1.1.1
HTTP, GraphQL और gRPC के लिए टर्मिनल API क्लाइंट। सरल .http फ़ाइलें जिन्हें आप diff और version कर सकते हैं, साथ ही वर्कफ़्लो, मॉक, प्रोफाइलिंग, ट्रेसिंग, OpenAPI इम्पोर्ट, SSH टनल, Kubernetes पोर्ट-फ़ॉरवर्ड, WebSocket, SSE और CLI रनर की सुविधाएँ।
Resterm
टर्मिनल के लिए एक API-as-code वर्कबेंच।
resterm.app · docs
Resterm एक कोड-प्रथम API क्लाइंट है जो सादे .http/.rest फ़ाइलों के इर्द-गिर्द बना है। एक अनुरोध पाठ की कुछ पंक्तियाँ हैं जिन्हें आप पढ़ सकते हैं, diff कर सकते हैं और git में रख सकते हैं, और यही बात वर्कफ़्लो और स्थानीय mocks पर भी लागू होती है। आप काम करते समय उन्हें टर्मिनल UI से भेजते हैं, और resterm run वही फ़ाइलें CI में चलाता है। यदि आपकी API किसी SSH bastion के पीछे या किसी Kubernetes क्लस्टर के अंदर है, तो Resterm आपके लिए टनल या port-forward खोलता है।
विशेषताएँ
- HTTP, GraphQL, gRPC (reflection और streaming के साथ), WebSocket और SSE
- environment फ़ाइलें, समूहीकृत environments, dotenv फ़ाइलें और OS वेरिएबल
- bearer tokens, OAuth 2.0 (client credentials, password, और PKCE के साथ authorization code), और उन CLIs से tokens जिन्हें आप पहले से उपयोग करते हैं, जैसे
gh auth token - TLS client certificates, कस्टम root CAs, proxies, HTTP/2 और प्रति environment एक cookie jar
@captureऔर@assertके साथ captures और checks, साथ ही@pollऔर@retry- वर्कफ़्लो जो अनुरोधों को चरणों में जोड़ते हैं,
@ifऔर@for-eachके साथ - तर्क के लिए RestermScript और
@rts testब्लॉक - Vim motions, syntax highlighting, directives, headers, फ़ाइल पथों के लिए completion, और inline diagnostics वाला एडिटर
- एक अनुरोध को कई environments में भेजने और परिणामों को diff करने के लिए
@compare - प्रति-चरण बजट के साथ timeline tracing, और OpenTelemetry में export
- latency आँकड़े, एक histogram, P95 और P99 के साथ
@profile - SSH tunnels और Kubernetes port-forwards जिन्हें Resterm अनुरोध के लिए खोलता है
- आपकी
.httpफ़ाइलों से स्थानीय mock सर्वर, और एक recording proxy जो वास्तविक ट्रैफ़िक को अनुरोधों या mocks में बदलता है - CI के लिए
resterm run, text, JSON या JUnit आउटपुट और exit codes के साथ जो विफल check को TLS या tunnel त्रुटि से अलग बताते हैं - वही फ़ाइलें आपके अपने Go कोड से चलाने के लिए headless Go API
- curl और OpenAPI से import, और collections को bundles या zip फ़ाइलों के रूप में साझा करना
- कस्टम key bindings और themes
- किसी फ़ाइल को
$EDITORमें खोलें, या किसी response body को अपने डिफ़ॉल्ट ऐप में खोलें
कोई खाता नहीं और कोई telemetry नहीं।
[!NOTE] Resterm में कोई MCP सर्वर या अंतर्निहित AI सुविधाएँ नहीं हैं। यदि आप चाहते हैं कि आपका LLM Resterm को समझे, तो उसे
docs/में Markdown दस्तावेज़ों या resterm.app/docs की ओर इंगित करें।
स्क्रीनशॉट
Trace और timeline
UI का और अधिक देखने के लिए क्लिक करें
वर्कफ़्लो
Profiler
Explain
RestermScript
इंस्टॉल
macOS और Linux:
brew install resterm
# or
curl -fsSL https://raw.githubusercontent.com/unkn0wn-root/resterm/main/install.sh | bash
Windows:
iwr -useb https://raw.githubusercontent.com/unkn0wn-root/resterm/main/install.ps1 | iex
Go 1.25 या नए संस्करण के साथ:
go install github.com/unkn0wn-root/resterm/cmd/resterm@latest
macOS, Linux और Windows के लिए पहले से बने बाइनरीज़ releases पेज पर उपलब्ध हैं। macOS बाइनरीज़ के लिए macOS 13 Ventura या नया संस्करण आवश्यक है, और Linux बाइनरीज़ के लिए glibc 2.32 या नया संस्करण आवश्यक है।
Homebrew इंस्टॉलेशन को अपडेट करने के लिए, brew upgrade resterm चलाएँ। रिलीज़ बाइनरीज़ या स्क्रिप्ट्स से किए गए इंस्टॉलेशन के लिए, resterm --update चलाएँ। यदि आपने Go से इंस्टॉल किया है, तो ऊपर दिया गया go install कमांड दोबारा चलाएँ। अधिक जानकारी इंस्टॉल गाइड में।
त्वरित शुरुआत
mkdir my-api && cd my-api
resterm init
resterm
resterm init एक requests.http फ़ाइल बनाता है जिसमें कुछ नमूना अनुरोध और उनका उत्तर देने के लिए स्थानीय मॉक होते हैं, इसलिए इसे आज़माने के लिए आपको किसी वास्तविक API की आवश्यकता नहीं है। मॉक सर्वर शुरू करने के लिए g Shift+M दबाएँ, कर्सर को किसी अनुरोध पर ले जाएँ और उसे भेजने के लिए Ctrl+Enter दबाएँ। किसी भी समय सहायता के लिए ? दबाएँ।
आपको init की भी आवश्यकता नहीं है। resterm चलाएँ, कोई URL टाइप करें या कोई curl कमांड पेस्ट करें, और Ctrl+Enter दबाएँ।
यही फ़ाइल UI के बिना भी चलती है। एक टर्मिनल में मॉक शुरू करें और दूसरे में कोई अनुरोध चलाएँ:
resterm mock requests.http # terminal 1
resterm run --request CreateUser requests.http # terminal 2
अनुरोध फ़ाइलें
Resterm मानक .http प्रारूप को पढ़ता है और सेटिंग्स तथा ऑटोमेशन के लिए उसके ऊपर # @ निर्देश जोड़ता है:
# @setting base-url https://api.example.com/v1/
### Create users
// Send this request once for each name in the list.
# @for-each ["david", "tom"] as name
# @when env.meta.name == "dev"
# @assert response.statusCode == 201
POST users
Content-Type: application/json
{"name":"{{= name }}"}
पहले अनुरोध से पहले का @setting पूरी फ़ाइल पर लागू होता है। ### एक नया अनुरोध शुरू करता है। किसी अनुरोध के ऊपर दिए गए निर्देश उसे दोहरा सकते हैं, छोड़ सकते हैं या प्रतिक्रिया की जाँच कर सकते हैं।
_examples/ में और उदाहरण हैं, और हर निर्देश request file reference में सूचीबद्ध है।
दस्तावेज़ीकरण
पूरा दस्तावेज़ resterm.app/docs पर है। शुरुआत करने के लिए अच्छी जगहें हैं workflows, mock servers, recording, the CLI और RestermScript।
TUI के अंदर, :help <topic> अंतर्निहित मैनुअल खोलता है और :docs <topic> वेबसाइट पर वही पृष्ठ खोलता है।
अपने स्वयं के Go कोड से request files चलाने के लिए, headless पैकेज देखें।
प्रायोजक
Resterm मुफ़्त और ओपन सोर्स है और हमेशा रहेगा। अगर आपको मेरा काम पसंद है, तो आप GitHub पर इसका प्रायोजन कर सकते हैं।