Stop switching to external API clients. Test and debug your Express and NestJS routes directly from your editor with a single click.
Easy Run turns your VS Code into a powerful API testing playground, automatically detecting your routes and providing a smooth, Postman-like experience without leaving your code.
✨ Features
🔍 Intelligent Route Detection
Auto-Scanner: Instantly finds routes in Express and NestJS files.
NestJS Power User: Detects setGlobalPrefix, resolves dynamic variables in prefixes, and handles Monorepos effortlessly.
CodeLens Integration: A "Run" button appears directly above your route definitions.
🍱 Integrated Request UI
Postman-style Panel: Full-featured UI with tabs for Params, Auth, Body, and Headers.
Auth Support: Built-in support for Bearer Tokens, Basic Auth, and API Keys.
Smart Formats: Syntax highlighting for JSON responses and clean status/time badges.
📁 Advanced Request Handling
Binary-Safe File Uploads: Deep support for multipart/form-data. Upload images, PDFs, and more directly from the UI.
Path Param Pre-filling: Automatically detects :id or :userId in your routes and creates input fields for them.
Request Cancellation: Stop long-running requests instantly with the integrated Cancel button.
🏗️ Monorepo & Project Awareness
Multi-Project Support: Automatically identifies different projects in your workspace and isolates their configurations.
Port Autodiscovery: Scans your .env files to find the correct local port for each project.
Existing Server Mode: Toggle between spinning up a temporary test server or hitting your already running application.
🚀 Getting Started
Install the extension.
Open any file containing Express or NestJS routes.
Click "Run" above a route definition.
Configure your request in the popup panel and hit Send.
⚙️ Configuration
Easy Run is designed to work out of the box, but you can fine-tune it:
Setting
Description
Default
apiRouteTester.enableDetection
Enable/Disable automatic route scanning.
true
apiRouteTester.useExistingServer
Use your running server instead of a temp one.
false
apiRouteTester.existingServerUrl
The base URL for your running server.
http://localhost:3000
apiRouteTester.manualGlobalPrefix
Override detected global prefixes (e.g. /api/v1).
""
🛡️ Security & Privacy
Local Only: Your data never leaves your machine. All requests are sent from your local environment.
Privacy First: Easy Run does not collect any user information, source code, or request data. Nothing is sent to external servers or used for telemetry.
Strict CSP: The Request UI uses a strict Content Security Policy and nonces to prevent XSS.
Path Hardening: Built-in protection against path-based script injection.
Standard FS Access: Only accesses files in your workspace or those you explicitly select for upload.