curl2code
Dev toolIn productionA curl → code converter for 31 languages, right in the browser: all conversion runs on WebAssembly, no server. Around it — a request builder, bring-your-own-key AI, and 1,200+ SEO pages in 39 languages.
curl2code.com ↗Why it exists
Every developer has at least once copied a curl command from DevTools or some docs and rewritten it by hand into their language's code — headers, body, auth and all. Tedious and easy to get wrong.
curl2code removes that step: paste curl, get working code. Free, no sign-up, no tracking. The parsing core is the excellent open-source curlconverter library; my work was turning it into a finished product — the interface, the tools around it, privacy, speed, and tens of thousands of pages built for search.
31 languages — and not a byte to the server
Conversion into 31 languages and 49 variants — from Python requests to Rust reqwest to C libcurl — runs right in the browser on WebAssembly. It's not just fast (no server round-trip) — it's private: a curl command with its tokens and request body never leaves the user's machine. For a tool people paste real keys and headers into, that's fundamental.
More than a snippet
The output isn't a bare line. “Smart Clean” strips the junk headers DevTools adds to “Copy as cURL” so the code stays clean. “Full Example” mode builds a complete example — imports, types, error and status handling — the stuff you'd normally add by hand after converting.
Request builder
Not everyone has a curl command ready. The builder assembles a request visually — method, URL, headers, auth, body (JSON/Raw/Form) — and produces both the curl and the code in the chosen language on the fly. Handy when you need to sketch an API request and grab it straight into your project.
Compare languages side by side
Split View shows the same command in two languages at once — say, Python and JavaScript side by side. Useful when you're porting a request between services on different stacks, or just deciding which fits better. And any result can be shared with a short link.
AI — on your own key
On top of conversion there are two AI tools: “Explain” describes in plain language what a curl command does, and “Reverse” does the opposite — turns code back into curl. The principle is bring-your-own-key: the user plugs in their own key (OpenRouter, OpenAI, Anthropic or Google), and it stays in the browser, never stored on the server. Each request is proxied with Redis-backed rate limiting.
1,200+ pages for search — in 39 languages
Half the product is growth. For every language and scenario there's a dedicated landing page (“curl to Python”, “curl to Go”, etc.) with examples, FAQ and internal linking — over 1,200 SEO-optimised pages. Plus reference guides on curl. And all of it is translated into 39 UI languages, including RTL (Arabic, Hebrew, Farsi, Urdu) — on next-intl.
Under the hood
A static-at-heart frontend product with a thin server layer for the AI proxy and analytics. Built to be fast, private and cheap to run.
- Next.js 16 (App Router) · TypeScript 5.9 in strict mode · Tailwind CSS 4
- UI on shadcn/ui + Radix; state on Zustand 5
- curlconverter compiled to WebAssembly — conversion on the client
- i18n on next-intl: 39 locales, RTL support, 1,200+ static SEO pages
- PostgreSQL 18 + Prisma 7, Redis 8 for AI-proxy rate limiting
- Sentry for monitoring; tests on Vitest and Playwright
- Code quality: ESLint 9, Prettier, Husky, lint-staged