this post was submitted on 08 Mar 2026
19 points (91.3% liked)
Technology
82460 readers
2713 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related news or articles.
- Be excellent to each other!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
- Check for duplicates before posting, duplicates may be removed
- Accounts 7 days and younger will have their posts automatically removed.
Approved Bots
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
https://justuse.org/curl/
Curl is great. I use curl. Most developers use curl. But “you can call an API with curl” and “curl is enough as an API working environment” are two very different claims.
The problem is that real API work is almost never just one request typed into a terminal like some kind of beautifully minimalist Unix haiku. It usually turns into auth, environments, copied headers, reused payload fragments, request chains, documentation, testing, debugging, sharing examples with teammates, reviewing changes in Git, and trying not to break prod because you forgot to swap one token or one base URL.
At that point, people are not really using “just curl” anymore. They are using curl plus shell scripts, plus notes, plus env files, plus copied commands from Slack, plus random JSON files, plus tribal knowledge. Which is fine, until it becomes annoying, fragile, and weirdly hard to collaborate around.
This argument doesn't really hold up, honestly. That is all easily done with shell scripting, and shell scripts can be committed to source control and shared to other members of the team easily. This is what my team does for our common API needs. It even has ecosystem support in many places, such as popular openapi renderers providing curl command examples for routes automatically, being able to copy the exact request made by a web browser as a curl command from the network tab automatically, and so on.
I use curl for absolutely everything, including testing out my work for each and every ticket I work on. Been doing this for years now. It works great and has many, many advantages over property bullshit like Postman.
I think both of you are right, just talking about slightly different layers of the problem.
curl absolutely works (and it rocks!). Shell scripts absolutely work. For terminal-native teams, that can be a great setup.
But this feels a bit like two very old debates mashed together: terminal/Vim vs Git GUI, and Emacs vs IDEs. Yes, some people are perfectly happy doing everything from primitives - git in the terminal (i hope by the majority), editing in Vim, wiring things together with scripts, maybe extending Emacs until it becomes a small civilization :D. That is a real workflow, and for the people who like it, often a very effective one.
But the existence of that lower-level workflow does not make higher-level tooling pointless. It just means different people and teams want different layers of abstraction on top of the same underlying capability.
So I do not think the real question is "can curl do it?" it can, for sure!. The real question is whether raw requests plus scripts are the best shared working model once API work starts involving reuse, documentation, onboarding, review, collaboration, and people outside the terminal-native crowd. For some teams, yes. For many teams, not really.
That is where something like Voiden, starts to make sense to me. Not as a replacement for curl (at the end they are all making a simple API request), but as a way to make API work more modular, composable, and shareable without everything turning into a pile of scripts, copied commands, and scattered docs.
But the bigger problem i see is when simple tooling (or rather what should be simple) become super bloated - and are super opinionated and take away the flexibility from users - and they end up having to design their workflows around how a tool works. Voiden i guess is taking the less opinionated stance - and trying to give all the freedom - with markdown, offline and programmable interfaces etc etc.. but let's see.