🇬🇧 ReqX - English
ReqX is a local-first API client built strictly for VS Code. The goal is to provide a fast, integrated way to test endpoints without the bloat of standalone applications, while fixing common annoyances like managing auth tokens and local data security.
Why use ReqX?
1. Your data is actually encrypted
Most API clients store your saved requests, environment variables, and headers in plain text. ReqX forces AES-256 encryption on all your local workspace data by default to keep your API keys and secrets safe.
2. Domain-based header memory
Instead of manually typing an Authorization header every time you test a new endpoint, ReqX remembers the headers you previously sent to specific domains. When you hit that domain again, it prompts you to auto-import them.
3. Native VS Code experience
ReqX uses the Monaco Editor (the exact engine behind VS Code) for managing request payloads. You get native syntax highlighting, real-time JSON validation that catches syntax errors before you hit send, and familiar keyboard shortcuts.
Core Features
- cURL Import & Export: Paste a cURL snippet and ReqX parses the URL, method, headers, and body automatically. You can also export your current configuration out to code.
- Environments & Variables: Switch between environments (e.g.,
Dev, Staging) and inject dynamic variables using {{my_var}} anywhere in your URLs, headers, or body.
- Flexible UI Layout: Adjustable split-pane design with a drag handle so you can maximize the response viewer when reading large payloads.
- Multipart File Uploads: Built-in support for
multipart/form-data with drag-and-drop file attachment and visual image previews.
- Cancel In-Flight Requests: Hit
Esc or click "Cancel" to kill hanging network connections immediately without needing to reload the extension entirely.
- Cross-Workspace History: Keeps track of your request history, intelligently merging identical requests across different workspaces to reduce clutter.
Keyboard Shortcuts
| Command |
Shortcut (Windows/Linux) |
Shortcut (macOS) |
| Open ReqX |
Ctrl + Shift + R |
Cmd + Shift + R |
| Execute Request |
Ctrl + Enter |
Cmd + Enter |
| New Request |
Ctrl + Shift + N |
Cmd + Shift + N |
| Format JSON |
Ctrl + Shift + F |
Cmd + Shift + F |
| Copy as cURL |
Ctrl + Shift + C |
Cmd + Shift + C |
| Cancel Request |
Esc |
Esc |
Extension Settings
You can adjust ReqX behaviors natively via the VS Code Settings (Ctrl + ,):
reqx.timeout: Request timeout in seconds before auto-aborting (default: 30).
reqx.encryption: Toggle robust local data encryption (default: true).
reqx.encryptionAutoReEnableDays: Re-enables encryption automatically after a set period if it was manually disabled.
reqx.bypassJsonValidation: Allows sending malformed JSON payloads (useful for negative testing).
reqx.autoMergeRequests: Controls history merging behavior when switching between different projects.
ReqX — Built for speed, styled for VS Code.
🇸🇦 ReqX - العربية
تعد إضافة ReqX عميلاً (API Client) سريعاً ومُدمجاً بالكامل داخل بيئة VS Code للعمل محلياً. يهدف المشروع إلى تزويدك بطريقة سريعة ومباشرة لاختبار وبناء الواجهات البرمجية دون الحاجة لتطبيقات منفصلة تستهلك الموارد، مع معالجة المشاكل المزعجة كإدارة التوكنات (Auth Tokens) وأمان البيانات المحلية.
لماذا تستخدم ReqX؟
١. بياناتك مشفرة فعلياً
معظم أدوات الـ API تحفظ طلباتك ومتغيرات البيئة والـ Headers في نصوص مكشوفة (Plain text). أداة ReqX تفرض تشفير AES-256 على كافة بيانات بيئة العمل المحلية افتراضياً للحفاظ على أمان وسرية مفاتيح الـ API الخاصة بك.
٢. ذاكرة الـ Headers حسب النطاق (Domain)
بدلاً من كتابة Authorization يدوياً في كل مرة تختبر فيها استدعاءً جديداً، تقوم الإضافة بتذكر الـ Headers التي أرسلتها لموقع أو نطاق معين. وعند إرسالك لطلب جديد لنفس النطاق، ستقترح عليك الإضافة إدراجهم تلقائياً.
٣. تجربة مدمجة وأصيلة في VS Code
تستخدم الإضافة محرر Monaco (نفس المحرك الذي بُني عليه VS Code) للتحكم في بيانات الطلب. ستحصل على تلوين برمجي للنصوص، تحقق فوري من أخطاء الـ JSON قبل الإرسال، مع دعم كامل لاختصارات لوحة المفاتيح التي اعتدت عليها.
المميزات الأساسية
- استيراد وتصدير cURL: فقط انسخ والصق أي كود cURL، وستقوم الإضافة بتحليل الرابط، نوع الطلب، والـ Headers، والـ Body بشكل آلي. كما يمكنك تصدير الإعداد الحالي ككود برمجي.
- بيئات العمل والمتغيرات: تنقل بسهولة بين بيئات العمل (مثل
Dev و Staging) وقم بحقن المتغيرات الديناميكية كـ {{my_var}} في الروابط أو الـ Headers أو الـ Body.
- واجهة مرنة: تصميم منقسم (Split-pane) يمكنك التحكم في أبعاده لتوسيع شاشة عرض الاستجابة (Response) عندما تحتاج لقراءة بيانات كبيرة.
- رفع الملفات (Multipart): دعم مدمج لـ
multipart/form-data مع إمكانية السحب والإفلات للملفات وعرض معاينات مباشرة للصور.
- إلغاء الطلبات المعلقة: اضغط
Esc أو زر "Cancel" لإلغاء أي اتصال شبكي معلق فوراً دون الحاجة لإغلاق النافذة.
- سجل ذكي للمشاريع المتعددة: يتتبع سجل طلباتك بذكاء ويدمج الطلبات المتطابقة بين مساحات عملك (Workspaces) المختلفة لتقليل الفوضى.
اختصارات لوحة المفاتيح
| الأمر |
الاختصار (Windows/Linux) |
الاختصار (macOS) |
| فتح الإضافة |
Ctrl + Shift + R |
Cmd + Shift + R |
| تنفيذ الطلب |
Ctrl + Enter |
Cmd + Enter |
| طلب جديد |
Ctrl + Shift + N |
Cmd + Shift + N |
| تنسيق شكل JSON |
Ctrl + Shift + F |
Cmd + Shift + F |
| نسخ كـ cURL |
Ctrl + Shift + C |
Cmd + Shift + C |
| إلغاء الطلب |
Esc |
Esc |
إعدادات الإضافة
يمكنك تخصيص سلوك ReqX من خلال إعدادات مدمجة في نظام VS Code (Ctrl + ,):
reqx.timeout: أقصى مدة للانتظار (بالثواني) قبل إلغاء الطلب (الافتراضي: 30).
reqx.encryption: تفعيل أو تعطيل التشفير القوي للبيانات المحلية (الافتراضي: true).
reqx.encryptionAutoReEnableDays: إعادة تفعيل التشفير تلقائياً بعد فترة زمنية في حال تم إيقافه يدوياً (حماية إضافية).
reqx.bypassJsonValidation: يسمح بإرسال حمولة JSON بتنسيق خاطئ (مفيد لاختبارات الـ Exceptions).
reqx.autoMergeRequests: للتحكم بسلوك دمج السجل عند التنقل بين مشاريع مختلفة.
ReqX — مصمم للسرعة، ومهيأ ليناسب بيئة العمل.