Dragonfly: The API client for VS Code that reads your code
Dragonfly turns your Express and Next.js routes into ready-to-send requests, organized like your project. Build, send and inspect them right next to your code. No second app, and nothing ever leaves your machine.
Website · Docs · Watch the demo · Changelog
Other clients start empty. Dragonfly starts from your code.Most API clients hand you a blank request and wait for a URL. Run Scan Workspace for Routes and Dragonfly reads your source, finds every Express and Next.js endpoint, and turns them into a collection you can send right away. Add a route later, scan again, and it updates.
Everything stays on your machine. Collections, environments and request history live in VS Code's own storage, tokens and passwords go into VS Code's secure storage instead of a JSON file, and the extension itself never talks to a server. A complete client, not a cut down one
Bring the work you already haveOne Import Collection command detects the format and pulls in folders, headers, params, bodies
and environments intact, so
Getting startedNew here? Read the docs to get set up in a minute.
FAQHow do I test an API endpoint inside VS Code?Install Dragonfly and open it from the Activity Bar. Build the request in the sidebar (method, URL, headers, body, auth) and press Send. The response shows up next to your code, so there is no second app to switch to. How do I read the response?The response shows up next to the request with its status, time and size at the top. A JSON body comes back pretty-printed and syntax-highlighted by default, and you can switch it to a collapsible tree to drill into nested objects and arrays. Response headers and cookies each get their own tab, and the copy button copies whichever tab you are looking at. Can I import my Postman collection?Yes, and not only Postman. Export from Postman (v1 or v2), Thunder Client or Insomnia, or save a HAR capture from your browser's devtools, then run Import Collection from the Command Palette — the format is detected automatically. Folders, requests, headers, query params and bodies all come across, and any environment in the file comes with them. Auth credentials are left out on purpose: the auth type is imported so you can see that a request needs a bearer token, but the token itself is not. You re-enter it once and it goes into VS Code's secure storage rather than sitting in a JSON file. Anything in the export that looks like a live credential is blanked on the way in for the same reason, and the import tells you when it did that. Can it find the API routes in my project automatically?That is the part that makes Dragonfly different from other clients. Run Scan Workspace for Routes and it parses your source for Express route handlers and Next.js API routes, then builds a collection out of what it finds. Run it again after you add endpoints and it picks up the changes. Which frameworks does route discovery support?Express and Next.js, covering both the App Router and the Pages Router. For anything else you can import an OpenAPI spec, a Postman/Thunder Client/Insomnia collection, a HAR capture, or a single cURL command. Does it work offline, and where does my data go?Only the API you are calling needs the network. The extension never contacts a server of its own. Collections, environments and history sit in VS Code's storage on your machine, and tokens and passwords go into VS Code's built-in secure storage. Is it free?Yes, Dragonfly is free. No account, no paid tier, no telemetry. Can I generate code for a request instead of just sending it?Yes. Any request in Dragonfly can be copied out as cURL, Node.js, Python, Go, PHP, Java or Rust. Useful when you have finished testing an endpoint and need to drop the actual call into your code or share it with someone who is not using the extension. How do environments work?Set up variables like What auth types are supported?Bearer Token, API Key and Basic Auth. The secret part of each (the token, the key, the password) is stored through VS Code's SecretStorage API rather than written into a request file, so it does not end up in your collection JSON or get picked up if that JSON is ever shared. What happens to a request after I send it?It gets saved to Activity automatically, so you can come back to it, resend it, or check what a response looked like earlier, without saving it into a collection first. Saving to a collection is a separate, deliberate step for the requests you want to keep around long term. I use a framework other than Express or Next.js. Can I still use Dragonfly?Yes. Route discovery today covers Express and Next.js, but you are not limited to that. Import an OpenAPI or Swagger spec if your framework generates one, bring in a Postman collection you already have, or paste a single cURL command for a one-off request. Building requests by hand from the Activity Bar works the same regardless of framework. Will route discovery support more frameworks?That is the plan. Which framework to add next is largely going to be driven by what people ask for, so if you want a specific one supported, say so in an email and it moves up the list. What Dragonfly is, and is notDragonfly does one job well: read your codebase and build your requests for you, right inside the editor. Knowing where it stops is part of the pitch. Built for this
On the roadmap
How it comparesPostman, Thunder Client and Insomnia are all good tools. Here is where Dragonfly is different, and where it overlaps. Full breakdowns on the website: vs Postman · vs Thunder Client · vs Insomnia
Comparison reflects the free, out-of-the-box experience of each tool. Found a bug, or have an idea?Dragonfly is in beta and built in the open. Email saurowankhade@gmail.com with a bug report, a feature request, or just to say hello. Steps to reproduce help a lot, and so does telling us which framework route discovery should learn next. Curious how your data is handled? Read the privacy note. Connect |