TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Uncurl.dev – Convert curl commands to a shareable, executable UI

115 pointsby darubramhaabout 2 months ago
Hey HN,<p>I built uncurl.dev to scratch my own itch: I kept getting curl commands in API docs, bug reports, or Slack messages and wanted a quick way to visualize, run, and debug them without firing up Postman or writing code to dissect them. It was also sometimes painful to create a test page specifically for non-tech users to consume an API. I originally vibe-coded this over a weekend just to make it easier for myself to debug API requests shared as curl commands. It slowly grew into something I found surprisingly useful in my workflow, so I decided to clean it up and share it.<p>uncurl.dev takes a curl command and: - Converts it into a visual representation - Lets you edit and inspect all parts of the request - Allows sharing via a unique link - (Optionally) executes it from the server, so business or non-technical users can see results<p>Execution is currently behind login, with a cap (5&#x2F;min) to avoid abuse and manage costs. Non-logged-in users can still build and share curl commands—they just can’t execute them. The server runs each request in a Docker sandbox with strict resource&#x2F;time limits (cpu, memory, timeout, no network access outside the request).<p>It’s not meant to replace full-featured tools like Postman or Hoppscotch. It’s more of a “CLI-to-UI bridge” for fast sharing and debugging, especially in dev workflows where curl is the starting point. Think of it like Pastebin or JSFiddle, but for curl commands.<p>If you’ve ever copied a curl from an API doc and wanted a cleaner way to see it or send it to someone else, I’d love your feedback.<p>Thanks! (You can try it without signup here: <a href="https:&#x2F;&#x2F;uncurl.dev" rel="nofollow">https:&#x2F;&#x2F;uncurl.dev</a>)

16 comments

ajninabout 2 months ago
Hum I&#x27;m definitely not the target for this but I don&#x27;t see the value to obfuscate all the info in an UUID, I&#x27;d have kept things simple and stored things into an URL fragment, that way it&#x27;s possible to operate client-side only and nothing gets leaked to a server I don&#x27;t know much about like headers or whatever tokens or API keys could be passed in an URL.
评论 #43617152 未加载
评论 #43613168 未加载
markerzabout 2 months ago
Hey OP, your DELETE curl endpoint is unauthenticated! I can&#x27;t DM you on HN and there&#x27;s no contact on your website, so sorry for the public security disclosure. :(
评论 #43615622 未加载
评论 #43618032 未加载
treeskneesabout 2 months ago
This is why in our codebase we have a rule to not use short options&#x2F;flags for called commands like curl. And if there is only a short option available, it must be explained in a code comment.
评论 #43614909 未加载
trolliedabout 2 months ago
Flagged this because it is a security clusterfuck.
评论 #43618070 未加载
VWWHFSfQabout 2 months ago
This would be useful if it was client-side only. I only very rarely have curl commands to run that don&#x27;t also include some stuff like cookies and tokens, which I&#x27;m not sending to someone&#x27;s server so they can run curl for me.
评论 #43615002 未加载
评论 #43613760 未加载
Tabular-Icebergabout 2 months ago
It seems very particular about what curl options it supports. I keep getting “Please enter a valid curl command” no matter what I do.<p>Maybe the only solution is to somehow extract the actual command line parser from curl itself.
评论 #43618156 未加载
h1fraabout 2 months ago
Interesting. Default behavior could be improved. I blindly pasted a curl, except showing my curl it didn&#x27;t make any headers modifiable. It also didn&#x27;t redacted the Authorization header. Also there is no way to delete a page.
评论 #43615294 未加载
评论 #43613439 未加载
评论 #43614989 未加载
benoitgabout 2 months ago
The Jetbrains suite of IDEs have this handy feature : if you copy a curl command into an HTTP scratch file, it is automatically converted to the HTTP equivalent, which is IMHO much more readable.<p>Your project looks very cool though, and expands on the share aspect of the Jetbrains feature, very interesting!
评论 #43618084 未加载
评论 #43616430 未加载
评论 #43615108 未加载
niek_pasabout 2 months ago
Looks cool! One bug I found:<p>`curl www.google.com` works using 8.7.1 on macOS, but I get &quot;Please enter a valid curl command&quot; on your website.
评论 #43618163 未加载
lenkiteabout 2 months ago
Feels like a security nightmare - this is far better distributed as a local desktop UI rather than one hosted.
评论 #43614966 未加载
flippertoabout 2 months ago
While it looks good and even possibly useful, it seems to be a great way to leak sensitive cookies (especially since &quot;copy as cURL&quot; is so easy on the browser&#x27;s network tab).<p>I would 100% forbid its use in a company environment and I would encourage people in general not to use it for any non-trivial use case.
评论 #43614949 未加载
byearthithatiusabout 2 months ago
This is just waiting for people to leak cookies oh my lord....
fitsumbelayabout 2 months ago
This is a pretty cool project.<p>One thing: it&#x27;s rejecting dict lookups as invalid URL, eg. `curl dict:&#x2F;&#x2F;dict.org&#x2F;d:failure:fd-eng-fra`<p>I&#x27;m checking first here whether I missed something in the docs about not supporting DICT before I add issue to the GH repo
评论 #43618171 未加载
byearthithatiusabout 2 months ago
I already accidentally uploaded a cookie that I now need to reset because the website doesn&#x27;t let me delete the curl -_-
评论 #43615433 未加载
评论 #43615019 未加载
评论 #43619447 未加载
ustadabout 2 months ago
Hey, that looks great.<p>Could you describe more about the docker sandbox that you have? I am especially interested in the network restrictions.
评论 #43618374 未加载
polishdude20about 2 months ago
Why the need for an account to execute? Are you executing the command on behalf of the user on your server? Is it possible to just do it locally in browser?
评论 #43618187 未加载
评论 #43613938 未加载