cURL Paste 🚀
Run, paste, inspect, and debug native cURL requests directly inside VS Code.
cURL Paste is an open-source, high-performance Visual Studio Code extension built for developers who want to paste and execute native cURL commands directly in their IDE without converting them to third-party HTTP abstractions.
✨ Features
- Native cURL Execution Engine: Uses your real installed
curl binary via Node spawn(). Guarantees 100% fidelity for proxy support, SSL certs, HTTP/2, HTTP/3, binary uploads, multipart forms, cookies, and AWS presigned URLs.
- 3-Panel Workbench:
- Left Sidebar: Request History, Pinned Requests, Collections, Favorites, Real-time Search, and Method filter chips.
- Center Panel: Large Monaco Code Editor with syntax highlighting (shell/bash), multi-line support, auto-formatting (
Beautify), and instant execution shortcut (Ctrl+Enter / Cmd+Enter).
- Right Inspector Panel:
- 📦 Body Tab: Interactive collapsible JSON Tree Viewer (with search, copy-path, expand/collapse), HTML preview, Image renderer, Audio player, and Raw mode.
- 📋 Headers Tab: Filterable table for request and response headers with one-click key/value copying.
- 🍪 Cookies Tab: Parsed
Set-Cookie details (Name, Value, Domain, Path, Secure, HttpOnly).
- ⏱️ Timing Tab: Network waterfall breakdown (DNS Lookup, TCP Connect, TLS Handshake, Pre-Transfer, TTFB, Download, Total time).
- 📊 Statistics Tab: Request/Response size, speed, HTTP protocol version, and status code badges.
- 💻 Raw Console: Captures raw stdout, stderr, and process exit code.
- Request Comparison: Side-by-side response comparison diff (Comparing status code, duration, size, headers, and body diff).
- Import Engine: Paste cURL commands directly from Chrome DevTools, Firefox, Safari, Swagger UI, Postman, or Terminal with live validation preview.
- Multi-Format Exporter: Convert any request to cURL, JavaScript
fetch, axios, HTTP File (.http), Postman Collection (v2.1), Bruno (.bru), or Markdown docs.
- VSCode Theme Adaptation: Seamlessly adapts to VSCode Dark and Light themes with custom design tokens.
🛠️ Architecture
src/
├── extension/ # VS Code Extension Host (Node.js)
│ ├── commands/ # Registered VS Code commands
│ ├── execution/ # Native cURL spawner, stdout/stderr parser & timing metrics
│ ├── storage/ # StorageManager for globalState/workspaceState persistence
│ ├── webview/ # WebviewViewProvider & IPC bridge
│ └── extension.ts # Extension entry point
├── shared/ # Shared TypeScript types, constants & cURL tokenizer
│ ├── types.ts
│ ├── constants.ts
│ └── tokenizer.ts
└── ui/ # Webview UI (React 18 + Vite + Zustand + Monaco + Tailwind)
├── components/ # UI primitives (Button, Badge, Modal, Tabs, Card, etc.)
├── features/
│ ├── editor/ # Center Panel Monaco editor & top toolbar
│ ├── sidebar/ # Left Sidebar (History, Pinned, Collections, Favorites)
│ ├── inspector/ # Right Panel Inspector (Body, Headers, Cookies, Timing, Stats, Raw)
│ ├── comparison/ # Response diff viewer
│ ├── export/ # Code exporter modal
│ ├── import/ # Import cURL command modal
│ └── settings/ # Extension settings modal
├── hooks/ # VSCode API hook
├── parser/ # cURL parser & beautifier
├── store/ # Zustand store
├── App.tsx
└── index.tsx
⌨️ Keyboard Shortcuts
| Shortcut |
Action |
| Ctrl+Enter / Cmd+Enter |
Execute Active cURL Request |
| Escape |
Close Modals |
📄 License
MIT License
| |