What is Bandura?

Bandura is a local-first desktop IDE for API testing. Flows are plain .aether files edited as a graph or as YAML. Here is the idea and a tour of the window.

3 min read

Bandura is a desktop IDE for building, running, and debugging API tests. You describe a multi-step API scenario (log in, capture the token, create a record, assert on the result) as a flow, and Bandura gives you two ways to work on it at once: a visual graph you can arrange by hand, and a code editor showing the exact YAML underneath.

The one idea: the graph and the code are the same file

A flow lives in a single plain-text .aether file. The graph view and the code view are two renderings of that one file. Edit either and the other follows, because there is nothing to sync. No export step, no hidden database, no cloud copy.

Because flows are plain files:

  • They live in your Git repository, next to the code they test. Branch them, diff them, review them in pull requests. That arrangement has a page of its own: Git-native API testing.
  • A teammate gets your whole test suite with git clone. There is nothing to import; the files are the format.
  • Everything works offline, with no account. Secrets stay in your local .env file and are never written into flows. See the offline API client for what that rules out and what it costs.

What’s on screen

When you open Bandura with a workspace loaded, the window has five areas:

  • Activity bar (far left, icon rail): the top icons switch the sidebar between the File Explorer, Source Control (Git), and Environments; below them, buttons open the Flow Map (a workspace-wide overview of every flow) and Settings in the center area, where there’s room for them.
  • Sidebar holds whichever of the Explorer / Source Control / Environments views is active. Toggle it with ⌘B.
  • Editor (center) gives one tab per open file. .aether files open in the flow editor with Graph, Code, and Split tabs; every other file (.env, .json, .md, …) opens in a regular text editor.
  • Inspector (right, in the flow editor) shows details for the selected node: its YAML, the variables it uses, request parameters, its last result, and an AI chat.
  • Bottom panel carries Console, Variables, History, and Terminal tabs. Toggle it with ⌘J.

The status bar along the bottom shows the active environment on the left (click it to switch) and the active file plus the last run’s status on the right.

On Windows and Linux, read as Ctrl throughout these docs.

Words you’ll see everywhere

TermMeaning
FlowOne API scenario, stored as one .aether file.
NodeOne step in a flow: a request, a gRPC call, a WebSocket exchange, an assertion, a condition, a loop, a parallel fan-out, a script, an AI action, or a subflow.
WorkspaceThe folder you open in Bandura. All files live and stay there.
CaptureSaving a value from a response (like a token) into a variable for later nodes.
EnvironmentA named set of variables (staging, production, …) defined in bandura.json.

Where to go next

Open a folder (Open a workspace), then build and run something real in about five minutes (Your first flow). Already have a Postman collection? Import it instead of retyping it. For the full list of steps a flow can contain, read the node reference.

Last updated

Haven't installed it yet? Download Bandura. Windows and Linux builds are on the download page, and macOS follows once the builds are signed and notarized.