A minimal CLI helper to run a local development server with CORS enabled. Perfect for frontend development when you need to proxy requests to a backend server that doesn't have CORS configured.
npm install -g cors-dev-proxy
# or
pnpm add -g cors-dev-proxy
# or
yarn global add cors-dev-proxycors-dev-proxy [options] <command> [args...]-i, --in <port>- Specify the port of the backend server to proxy to-o, --out <port>- Specify the port for the CORS proxy (default: 3000)
Start a server and automatically detect its port:
cors-dev-proxy npm run devSpecify ports explicitly:
cors-dev-proxy -i 5173 -o 3000 npm run devRun with Vite:
cors-dev-proxy viteRun with any command:
cors-dev-proxy -o 8080 node server.js- Spawns your command - Runs the specified command (e.g., your dev server)
- Detects the port - Automatically detects which port your server is listening on
- Creates a CORS proxy - Starts a proxy server that forwards requests with proper CORS headers
- Forwards requests - All requests to the proxy are forwarded to your backend with CORS enabled
- ✨ Automatic port detection - No need to specify ports if your server outputs them
- 🔄 WebSocket support - Proxies WebSocket connections too
- 🎯 Credentials support - Handles cookies and authorization headers
- 🚀 Zero configuration - Just wrap your existing dev command
- 📦 Minimal dependencies - Lightweight and fast
The proxy automatically adds:
Access-Control-Allow-Origin- Set to the request origin or*Access-Control-Allow-Methods- Supports GET, POST, PUT, DELETE, OPTIONSAccess-Control-Allow-Headers- Allows all requested headersAccess-Control-Allow-Credentials- Enabled when cookies/auth are present
MIT © Viktor Lázár