cors-proxy
v1.1.0
Published
A universal, lightweight CLI tool and Node.js proxy server to bypass CORS restrictions.
Downloads
167
Readme
CORS Proxy
A universal, lightweight Node.js CLI tool and proxy server designed to securely bypass CORS (Cross-Origin Resource Sharing) restrictions.
🚀 Features
- Zero Config: Run it instantly from the command line using
npx. - Origin Whitelisting: Securely restricts access to predefined origins (e.g.,
localhost,*.yourdomain.com). - Stream Piping: Uses streams to efficiently pipe large responses without buffering them entirely in RAM.
- Spoofed User-Agent: Bypasses basic bot-protection on target servers.
- Programmatic API: Use it directly inside your own Express applications.
💻 CLI Usage
You can run the proxy instantly without installing it globally:
npx cors-proxy --port 8080 --origin "*"Options
-p, --port <number>: The port to listen on (Default:8080orPORTenv var).-o, --origin <string>: Comma-separated list of allowed origins. Use*to allow all origins, or specify exact domains and wildcards (e.g.http://localhost:3000, https://*.7u.pl). (Default:*orALLOWED_ORIGINSenv var).-h, --help: Display the help message.
Examples
Start an open proxy for local development on port 3000:
npx cors-proxy -p 3000Start a secured proxy that only allows requests from your specific domain:
npx cors-proxy -p 80 -o "https://myapp.com, https://*.myapp.com"🧩 Programmatic Usage
You can also import and use the proxy directly inside your Node.js scripts:
const startProxy = require('cors-proxy');
startProxy({
port: 3000,
allowedOrigins: 'http://localhost:8080, https://*.my-frontend.com'
});🐳 Docker Deployment
This service is also container-ready. Simply clone the repository and deploy behind a reverse proxy (like Nginx/Traefik).
docker compose up -dThe Docker container will respect the PORT and ALLOWED_ORIGINS environment variables provided in your .env file.
