Been building Voiden, an API IDE on Electron. Not really “just an API client”, and not a(nother) thin wrapper around a webapp either.

Made it intially available for Windows and Mac, but after getting requests from folks who work on Linux, we added Linux support a few months ago, before open-sourcing it. (That's actually one of the reasons we picked electron :to be able to ship fast and have cross platform consistency across Linux, Mac and Windows.)

Repo: https://github.com/VoidenHQ/voiden

So far, Voiden is available on Linux via:

Definitely considering adding more like Nix or Flatpak, but we are working to get our priorities right: Which ones would you actually use and prefer?

A disclaimer about the tool: Since we didn't want to build yet another (cheaper) clone of Postman, Voiden looks and feels very different:

  • The UI is "programmable": Requests are “built” with slash commands from blocks (endpoints, headers, auth, params, bodies, etc.), like LEGO blocks but for API components. Or like Notion for APIs.

  • These blocks can be also reused in different APIs to have ALL common elements done in one single file. You can then change them once and it will all get updated in all the other docs. Just like in code when we add an extra logic to an imported method. (In other API clients you would need to duplicate stuff or just use environment variables to substitute.)

  • API Specs, tests, and docs live together in executable Markdown.

Welcome to try it out and let us know: what works, what breaks, and which packaging or distro support would make Voiden easiest for you?

Strong opinions are encouraged. :)

Github : https://github.com/VoidenHQ/voiden Download here : https://voiden.md/download

Git native, No login, No accounts, No telemetry.

all 2 comments

sorted by: hot top controversial new old
[–] 3 points 7 months ago (1 child)

First of all, great work, and keep at it! I can't wait to have it on Flathub.

My two cent: Flatpak might be more relevant these days compared to AppImage.

Also, how is it "Notion-like"? I thought Notion is a note-taking app.

  • source
  • hideshow 1 child comment
  • [–] [S] 1 point 7 months ago* (last edited 7 months ago)

    Hey yes will do. Flatpak is something we see considering/working on.

    Notion in the sense that it adapts to the user. We like this idea : that you can use Notion for literally Amy document you want.

    In the same way, when one open Voiden they can "program" the interface with slash commands and add headers, auth, documentation etc in any way they like. So in Voiden we bring specs, tests and docs together in one single file. In the same way that you can use notion to bring different lists, blogs, ideas etc into the same place and collaborate. The difference and the power of Voiden is that everything you add in the Voiden doc is executable, meaning you can run the tests in the same place and keep the docs and the context (that might be on slack or anywhere else devs talk) together.

    Basically the notion like refers to the philosophy of the tool to not force a fixed UI to the user and allow for different use cases and scenarios. Does it make sense?

    We are also calling it Lego for APIs for the same reason plus because of the fact that you can use blocks to compose requests but also reuse them for multiple requests that share some similar components.

  • source
  • parent
  • 12 comments in c/programming@programming.dev view that post
    [–] 7 points 6 months ago (2 children)

    Voiden files combine frontmatter, Markdown, and structured void request blocks so the request and the documentation live together.

    This is... An interesting format. Why not just move the front matter field and markdown into the "structured" bit and just have a single thing to parse? Or at least combine the frontmatter and structured bit since they're both yaml anyway?

  • source
  • hideshow 2 child comments
  • [–] [S] 4 points 6 months ago (1 child)

    Interesting point. Are you thinking about this from the parser/tooling side, or from the person writing and reviewing the file?

    We intentionally started from Markdown because we wanted .void files to stay standards-compliant and not reinvent a new document format. Markdown already gives us a familiar, portable way to write docs, notes, examples, and explanations around the request.

    Frontmatter handles the document-level metadata, Markdown stays the human-readable documentation layer, and the structured Voiden blocks handle the executable API parts.

    We could put everything into one YAML object, but then the file becomes more like a config file than a Markdown document. The tradeoff we’re making is: keep the file readable in GitHub, PRs, and plain text editors while it still gives Voiden enough structure to execute requests reliably.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 4 points 6 months ago

    From both a tooling and user POV.

    We intentionally started from Markdown because we wanted .void files to stay standards-compliant and not reinvent a new document format.

    Unless I'm missing something you kinda have though? You've got a frontmatter bit followed by a MD document with a "footer" that has configuration in it?

    We could put everything into one YAML object, but then the file becomes more like a config file than a Markdown document.

    It seems like a config file to me. But reading through your documentation about blocks it seems like you're aiming to be something like Jupyter for REST? It's very confusing.

  • source
  • parent
  • [–] 4 points 6 months ago (2 children)

    Hey, I know this software 😆

  • source
  • hideshow 2 child comments
  • [–] 3 points 6 months ago (1 child)

    It would be perfect as a CLI and LSP combo.

  • source
  • hideshow 1 child comment
  • [–] 2 points 6 months ago (3 children)
  • [–] [S] 4 points 6 months ago (2 children)

    No it does have a CLI too and we are planning for a CLI runner very very soon !

  • source
  • parent
  • hideshow 2 child comments
  • 8 comments in c/opensource@lemmy.world view that post
    [–] 4 points 4 months ago (4 children)

    Stars are to Github what reviews are to Amazon.

    Also, what's the point of stars? Do you need confirmation to know your code is appreciated? The real metric for popularity is issues opened per week. Stars are just gamification - same as comment scores here.

  • source
  • hideshow 4 child comments
  • [–] 2 points 4 months ago (2 children)

    Stars have real impact, some tools will give you free access to them if you have past a certain threshold of stars

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 4 months ago (2 children)

    Long time ago it was a way to bookmark projects you're interested in to not lose them (akin bookmarking). Now it seems it's there purely for SEO and marketing reasons, like likes on other social media.

  • source
  • hideshow 2 child comments
  • 6 comments in c/programming@lemmy.ml view that post
    [–] 4 points 6 months ago (2 children)

    Looks cool, but there is a certain irony in calling something an "offline API client". I suppose that is to contrast it with Postman? (I've never used it myself but have heard friends complain of having to log in.. which rightfully seems excessive for what is essentially curl with a UI.)

    Using plain text files is a good design choice.

  • source
  • hideshow 2 child comments
  • [–] [S] 4 points 6 months ago (1 child)

    yes, indeed thats the idea. No need to log in or create an account on someones cloud.

    yes, plain text - markdown in particular, we have seen some devs do some great things we didnt even think of (it gives flexibility to create very weird and custom flows)

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 6 months ago (2 children)

    Totally local? Nice. Looking forward to trying this out.

  • source
  • hideshow 2 child comments
  • 3 comments in c/selfhosted@lemmy.world view that post
    [–] -1 points 4 months ago (2 children)

    Why the name "voiden"? Making things void is the opposite of what I want to do with apis.

  • source
  • hideshow 2 child comments
  • [–] [S] 2 points 4 months ago (1 child)

    haha the idea comes from the fact that the tool is not opinionated - in the sense that yes its an API client but its also an editor, etc. So it a tool with infinite possibilities and can be as flexible as people want. So this is the idea: void-endlessness-freedom.

    If it didn't scare you alot, will you try it? :)

  • source
  • parent
  • hideshow 1 child comment
  • [–] -4 points 4 months ago

    I don't have a use case right now, else I would.

    If English isn't your first language, "void" has a connotation of emptiness, nothingness. APIs are about constructing, not emptying.

  • source
  • parent