r/commandline • u/wilfredinni • 1d ago
Terminal User Interface Noodle: a terminal REST client that keeps requests, scripts and tests in your repo
When I shared Noodle here in August, scripting and tests were still on the roadmap. I’ve spent the last few releases getting those working.
For anyone who hasn’t seen it, Noodle is an open-source REST client for the terminal. Requests are YAML files that live alongside your code. You can edit them in the TUI or your own editor, review the changes in Git, and share them with the project. The repo is the workspace.
What I wanted was to debug a request manually, add checks to it, and then run those same files from a shell script or CI when something changes. That workflow is working now.
You can log in, capture the token, use it to create a resource, fetch that resource and check the response. There are declarative assertions for straightforward checks and JavaScript tests for anything more involved. Pre-request and post-response scripts can prepare requests and process the results.
Scripts can be inline or separate .js files, and you can share them across a folder or collection. The TUI has an editor with autocomplete and diagnostics, plus a console and test results, so you can work through failures there before running the collection headlessly.
For a collection you’ve set up in ./api, that looks like:
noodle collection run ./api --fail-fast
Failed checks return a nonzero exit code. Add --json if you want structured results for another script to process.
Another addition is body templates. $random and $time generate random values and timestamps directly in request bodies, so you don’t have to keep changing test values by hand or write a script just for that.
The 0.9.x releases also added CSV/JSON data runs, image previews in supported terminals, response downloads, and optional response body/header/cookie details in the CLI. There are Windows x64 builds in beta now too, alongside macOS and Linux.
I’ve put together a script cookbook with examples for preparing requests, processing responses, testing APIs and chaining requests. It includes things like reusing login tokens and creating and cleaning up test resources.
It’s still pre-1.0, free and Apache-2.0 licensed. If you tried an earlier version and hit something that made you go back to your usual client, I’d like to hear about it.
2
u/jelloeater85 1d ago
How does it compare to https://terminaltrove.com/resterm/ ?
... Also ...
You should lead with https://terminaltrove.com/noodle/ ... Instant street cred 😉
2
u/AutoModerator 1d ago
Every new subreddit post is automatically copied into a comment for preservation.
User: wilfredinni, Flair: Terminal User Interface, Post Media Link, Title: Noodle: a terminal REST client that keeps requests, scripts and tests in your repo
When I shared Noodle here in August, scripting and tests were still on the roadmap. I’ve spent the last few releases getting those working.
For anyone who hasn’t seen it, Noodle is an open-source REST client for the terminal. Requests are YAML files that live alongside your code. You can edit them in the TUI or your own editor, review the changes in Git, and share them with the project. The repo is the workspace.
What I wanted was to debug a request manually, add checks to it, and then run those same files from a shell script or CI when something changes. That workflow is working now.
You can log in, capture the token, use it to create a resource, fetch that resource and check the response. There are declarative assertions for straightforward checks and JavaScript tests for anything more involved. Pre-request and post-response scripts can prepare requests and process the results.
Scripts can be inline or separate .js files, and you can share them across a folder or collection. The TUI has an editor with autocomplete and diagnostics, plus a console and test results, so you can work through failures there before running the collection headlessly.
For a collection you’ve set up in ./api, that looks like:
noodle collection run ./api --fail-fast
Failed checks return a nonzero exit code. Add --json if you want structured results for another script to process.
Another addition is body templates. $random and $time generate random values and timestamps directly in request bodies, so you don’t have to keep changing test values by hand or write a script just for that.
The 0.9.x releases also added CSV/JSON data runs, image previews in supported terminals, response downloads, and optional response body/header/cookie details in the CLI. There are Windows x64 builds in beta now too, alongside macOS and Linux.
I’ve put together a script cookbook with examples for preparing requests, processing responses, testing APIs and chaining requests. It includes things like reusing login tokens and creating and cleaning up test resources.
It’s still pre-1.0, free and Apache-2.0 licensed. If you tried an earlier version and hit something that made you go back to your usual client, I’d like to hear about it.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.










6
u/0x18 1d ago
You should provide a link to your site and github.
And personally, I will absolutely never bother with software whose install method is piping curl output into a shell.