A REST scripting language
I still dislike Postman.
Heavy GUI tools for API testing always feel like they’re fighting against the developer’s workflow. You have to click through menus, manage collections in a proprietary format, and it’s a nightmare to version control.
I wanted something that felt like a programming language, but was specialized for one thing: making HTTP requests and asserting on the responses.
I first started ideating on Bell back in 2024. The goal was to create a Domain Specific Language (DSL) that was as readable as a cURL command but as powerful as a full testing suite.
Now, with the help of AI to help me with the more complex parts of the parser and runtime, I’ve brought that idea to life.
Bell scripts are simple .bell files. You define your endpoint, headers, and body using a clean, declarative syntax.
POST https://api.example.com/v1/login
Content-Type: application/json
{
"username": "admin",
"password": ""
}
EXPECT status 200
EXPECT json.token EXISTS
One of the most powerful features of Bell is its environment variable handling. You can define variables in a .env file or pass them in via the CLI, making it easy to switch between local, staging, and production environments without changing your test scripts.
bell test login.bell and see your results instantly.I’ve been using Bell to test all my recent projects, and it’s already saved me hours of clicking through Postman collections. It’s fast, it’s light, and it just works.