Gloomberb: a keyboard-driven market research terminal that ships as a TUI, a desktop app and a web page
Finance terminal, in your terminal.
At a glance
- What is it?
- A TypeScript finance terminal with a two letter command language for every pane, a plugin system for data providers and brokers, and a telemetry section the README documents in unusual detail.
- Who is it for?
- Gloomberb is worth a look if your daily work already lives in a terminal and you want company research, volatility surfaces, futures curves and CFTC positioning behind a two letter command instead of a dozen browser tabs. The three surfaces share one command language, so the TUI is the honest starting point even though a desktop app exists.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 8 days ago.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 28, 2026, and from our analysis. They are not legal advice.
Editorial analysis
Three surfaces sharing one command language
The pitch line is short: an open-source finance terminal that is fast, keyboard-driven and extensible. What follows matters more than the pitch, because it explains the shape of the project. There is a desktop app for macOS and Windows, a terminal UI for macOS, Linux and Windows, and a browser app at term.gloom.sh. The README states that the desktop app and the TUI share the command language and the plugin system.
That shared surface is the design decision that makes this project different from a web dashboard. The browser app offers a smaller feature set and requires a free Gloom Cloud account, with free market data rate-limited and delayed by 15 minutes, while Pro provides realtime data. So there are really three tiers of capability, and the README is upfront about which one you are in.
The three feature groupings in the README read like the manual's table of contents. Research companies: quotes, charts, financials, filings, options and analyst ratings. Follow markets: news, global indices, FX, economic events and market scanners. Manage your workspace: portfolios, watchlists, broker connections, alerts, notes and AI tools. Underneath sits a plugin layer that can add panes, data providers, broker connections and commands.
The technology is TypeScript with a Bun package manager, the license is MIT, and the project says it is built with OpenTUI. Version 0.15.2 is the current line, with v0.15.2 published on 2026-09-24 and the last push on 2026-09-28, so the release cadence is measured in days rather than months.
Installing on macOS, Windows, Linux, or through Bun
The install paths differ by what you want running. On Apple Silicon macOS the desktop cask is the one line:
brew install --cask vincelwt/tap/gloomberbWindows 11 gets an installer download instead, and the README is specific about the architecture story: it supports x64, and ARM64 through x64 emulation. That emulation note is the kind of detail that saves somebody an afternoon.
For the terminal UI on macOS or Linux, the README uses a pipe:
curl -fsSL gloom.sh/install | bashThe behaviour then splits by machine, which the README explains directly: on Apple Silicon Macs this installs the desktop app and the TUI, while on Intel Macs and Linux it installs the standalone TUI.
Bun is the third option and the one that works everywhere including Windows x64:
bun install -g gloomberbRunning `gloomberb` launches it. For graphics the README asks for a Kitty-compatible terminal such as Ghostty, Kitty or WezTerm, which is a real constraint rather than a preference, since the pane rendering depends on terminal capabilities. A documentation link covers direct downloads, install locations and updates.
Two letter commands that map directly onto panes
Press `Ctrl+P` for the command bar, or `` ` `` to jump to a ticker search. The desktop build also accepts `Cmd/Ctrl+K`. Everything after that is a mnemonic, and the README's table is short enough to be worth reproducing in spirit because it says more about the tool's depth than any feature list would.
`DES AAPL` opens company details, `GP NVDA` a price chart. `OVDV AAPL` is an implied volatility surface with options term structure, which is the kind of pane that decides whether this is a serious tool. `HVG AAPL` and `HVT AAPL` give realized volatility and volatility cones. `COT` shows CFTC positioning and cross-market extremes. Macro panes exist too: `WIRP` and `FFIP` for the US rate path and conditional FOMC probabilities, and `BTMM` for funding rates, bill curves and Federal Reserve liquidity.
Futures get a dedicated pane, `CTM`, for the contract curve, historical ghosts, roll yield and open interest, with `CTM VX` named as an example. `TOP` lists market stories, `PF` opens portfolios and watchlists, and `HELP` lists commands and keyboard shortcuts. Navigation is `Tab` to switch panes and `j` and `k` to move through lists.
Two documentation paths are worth knowing about. `docs/usage.md` covers charts, broker setup, keyboard shortcuts and the full command reference. `docs/research-data.md` covers return definitions, financial sources and model assumptions, which is the file to read before you build anything on top of a number this app displays.
The CLI takes the same commands from your shell
Anything the command bar does, the shell can do too:
gloomberb quote AAPL
gloomberb quote AAPL --json
gloomberb helpOutput is human-readable by default, and the README names three machine formats for scripting: `--json`, `--csv` and `--ndjson`. That is the part that changes how you would actually use the tool, because it turns a screen into a data source you can pipe into something else.
Plugins extend the same surface. They can add panes, data providers, broker connections and commands, and they install by repository slug:
gloomberb install gloom-sh/gloom-tvPLUGINS.md is the development guide, `docs/usage.md` has the live TV setup section, and CONTRIBUTING.md covers the rest of getting in. The npm package manifest confirms how wide the plugin API is, since the published exports include dedicated entry points for `types/plugin`, `types/persistence`, `types/broker`, `types/data-provider`, `types/financials`, `types/instrument`, `types/trading` and `types/ticker`, alongside UI, layout, time-series and i18n modules. Test files and fixtures are excluded from the published package, which is a reasonable thing for a library to do.
The interface is localized into English, Spanish, Simplified Chinese, Traditional Chinese, Japanese and Korean, switched with `LANG` in the command bar. For a terminal that many people will read all day, that is not a small detail.
What the crash report and usage count sections actually send
Gloomberb has a README section titled Crash reports and usage counts, and it is the most detailed telemetry description most projects publish. On an uncaught error, a render crash, or a plugin that fails to load, the app sends a report to `api.gloom.sh`, which forwards it to error tracking. The contents are enumerated: error type, message and stack trace, app version, operating system, and which surface it came from, meaning terminal, desktop or web, plus the plugin id when a plugin was the cause. The home directory is replaced with `~` before sending. Reports are tied to an account only when you are signed in.
The usage counts are described with similar precision. The app counts how often you open each function, from the command bar, a menu or a link in another pane, and which functions are on screen when a workspace is restored at launch. It sends each function's mnemonic, such as `DES` or `GP`, with those two counts, the surface, the app version and the operating system. The timing is stated: a minute after the first count, then every 15 minutes, and when you quit.
Two details in that paragraph matter if you are evaluating this for work. Plugin functions from non-official authors are sent as `plugin`, so their names never leave your machine. And neither payload contains anything from your workspace: no tickers, arguments, portfolios, watchlists, layouts, settings or queries.
Turning either off takes a command bar entry called `Crash Reports` or `Usage Counts`, or two config calls:
gloomberb config set telemetry.crashReports false
gloomberb config set telemetry.usage falseSetting `GLOOMBERB_NO_TELEMETRY=1` or `DO_NOT_TRACK=1` in the environment disables both. The browser app honours Do Not Track and Global Privacy Control as well. A random install id in `~/.gloomberb/install-id`, or local storage in the browser, is what the counts are keyed to, and the server adds your plan, signed out, Free or Pro, without tying the counts to your account.
Sponsorship, docs, and what a reader cannot learn from the README
The project is MIT licensed, which means you can read it, fork it and ship it without asking, and the README credits Adjacent as a sponsor for building prediction-market indices, reference rates and data, with a contact address for sponsoring. A funding.json in the tree suggests the sponsorship arrangement is formalised.
The documentation surface is wider than the README, and several of the decisions that matter are made there rather than here. `docs/browser.md` covers browser features and limits, which is where the delayed and rate-limited free data is specified in detail. `docs/installation.md` covers direct downloads, install locations and updates. `docs/usage.md` is the reference for charts, broker setup, shortcuts, the CLI and the localized interface, and it carries the live TV setup section that the plugin command points at.
The repository layout also tells you what this project actually contains beyond the app. There are several TypeScript configurations with distinct targets, including `tsconfig.dom.json`, `tsconfig.opentui.json`, `tsconfig.cloudflare.json` and `tsconfig.scripts.json`, which lines up with a desktop build, a terminal build, a serverless piece and its own scripts. `electrobun.config.ts` is the desktop shell, `bun.lock` the dependency lockfile, `patches/` and `plugin-icons/` and `plugin-manifest.json` all point at the plugin pipeline, and there is a `knip.jsonc` for unused-export checking. Two READMEs, one English and one Simplified Chinese, ship side by side, plus CLAUDE.md and AGENTS.md.
What none of that settles is the data itself. The README says the app is backed by Adjacent, and `docs/research-data.md` is where return definitions and model assumptions live. For a terminal that shows you implied volatility surfaces and roll yield, that file is the difference between a screensaver and something you can act on.
Editorial conclusion
Gloomberb is worth a look if your daily work already lives in a terminal and you want company research, volatility surfaces, futures curves and CFTC positioning behind a two letter command instead of a dozen browser tabs. The three surfaces share one command language, so the TUI is the honest starting point even though a desktop app exists. Two things to weigh before adopting it. The free market data is rate-limited and delayed by fifteen minutes unless you are on Pro, which puts a real ceiling on what the tool is for. And it phones home by default: crash reports and function usage counts both go to `api.gloom.sh` until you set `telemetry.crashReports` and `telemetry.usage` to false or export `DO_NOT_TRACK=1`. Install with Bun, run `gloomberb help`, and read `docs/research-data.md` before you trust a number it shows you.
Frequently asked questions
What is Gloomberb used for?
It is a market research terminal and portfolio tracker. The README groups its features into researching companies with quotes, charts, financials, filings, options and analyst ratings, following markets through news, indices, FX, economic events and scanners, and managing portfolios, watchlists, broker connections, alerts and notes.
How do I install the Gloomberb terminal?
On macOS or Linux the README uses curl -fsSL gloom.sh/install | bash, on Apple Silicon macOS the desktop cask is brew install --cask vincelwt/tap/gloomberb, and Bun users run bun install -g gloomberb. Graphics need a Kitty-compatible terminal such as Ghostty, Kitty or WezTerm.
Does Gloomberb send telemetry, and how do I turn it off?
By default it sends crash reports to api.gloom.sh and function usage counts, never workspace content. Run gloomberb config set telemetry.crashReports false and gloomberb config set telemetry.usage false, or set GLOOMBERB_NO_TELEMETRY=1 or DO_NOT_TRACK=1 in your environment to disable both.
Is Gloomberb a free Bloomberg Terminal alternative?
The README does not position itself against the Bloomberg Terminal. It states that the free tier of market data in the browser app is rate-limited and delayed by 15 minutes, while Pro provides realtime data, and the sponsor Adjacent supplies the underlying market data.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/gloom-sh-gloomberb)