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.
And now, with the ubiquity of AI chat bots, developers want their coding agents to be ble to handle all aspects of their projects.
To achieve these goals, I wanted to make a programming language specialized for making HTTP requests. A simple scripting language can live in your codebase, alongside your project. For here, you and your coding assistant can easily read and edit it in your editor, run it from your terminal or VSCode extension, and collaborate on it with git.
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 AI to help me with the more complex parts of the parser and runtime, I’ve brought that proof-of-concept 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 plan to start 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.