Development · head-to-head
CORS Proxy vs Kroki
CORS Proxy is a small open-source Node.js server (54 GitHub stars) that forwards a POST request's urlToGet body param to the target URL server-side and relays the response back with permissive CORS headers, sidestepping browser CORS errors for GET-able resources. It is a deploy-it-yourself utility, not a hosted service — the README's old Heroku demo link is dead since Heroku retired free dynos in 2022, so it only works once cloned and deployed to your own host.
Kroki puts a single unified HTTP API in front of two dozen open-source diagram-as-code renderers, including PlantUML, Mermaid, GraphViz, D2, BPMN, Excalidraw, and WaveDrom, so callers send diagram source text and get back an image with no local toolchain to install. A GET request embeds the (deflate+base64-encoded) diagram directly in the URL, making it trivial to drop live diagrams straight into Markdown or HTML. The project and its public instance at kroki.io are free and open source, with self-hosting via Docker documented for anyone who needs a private instance.
| CORS Proxy | Kroki | |
|---|---|---|
| Authentication | None | None |
| Pricing | free | free |
| Formats | JSON | SVG, PNG, PDF, JPEG |
| CORS | yes | yes |
| HTTPS | Yes | Yes |
Kroki supports 4 response formats, while CORS Proxy offers fewer — pick Kroki for more integration flexibility.