https://github.com/bensadeh/circumflex
๐ฟ It's Hacker News in your terminal
https://github.com/bensadeh/circumflex
cli client command-line console hacker hacker-news hackernews news reader terminal tui ycombinator
Last synced: 4 days ago
JSON representation
๐ฟ It's Hacker News in your terminal
- Host: GitHub
- URL: https://github.com/bensadeh/circumflex
- Owner: bensadeh
- License: mit
- Created: 2020-07-28T05:08:10.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2026-05-25T15:28:16.000Z (9 days ago)
- Last Synced: 2026-05-30T05:22:04.621Z (4 days ago)
- Topics: cli, client, command-line, console, hacker, hacker-news, hackernews, news, reader, terminal, tui, ycombinator
- Language: Go
- Homepage:
- Size: 42.1 MB
- Stars: 2,002
- Watchers: 8
- Forks: 45
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-github-repos - bensadeh/circumflex - ๐ฟ It's Hacker News in your terminal (Go)
- stars - circumflex
- charm-in-the-wild - circumflex - Read Hacker News in the terminal. (_built with Bubble Tea_) (Applications / RSS, News and Weather)
README
#
circumflex is a command line tool for browsing Hackerย News in your terminal
### Main features
- ๐ **Everything in one place** โ read both the comment section and articles in Reader Mode
- ๐ **Syntax highlighting** โ syntax-aware formatting for comments and headlines
- โก๏ธ **Vim-style navigation** โ scroll through, jump between and collapse threads with familiar keybindings
**You might also like:**
- ๐คน **Native terminal colors** โ you bring your own color scheme, `circumflex` does the rest
- ๐ **Nerd Fonts** โ full support for Nerd Fonts as icons
- โค๏ธ **Add to favorites** โ save interesting submissions for later
## Installing
The binary name for `circumflex` is `clx`.
```console
# Homebrew
brew install circumflex
# Nix
nix-shell -p circumflex
# AUR
yay -S circumflex
# Go
go install github.com/bensadeh/circumflex/cmd/clx@latest
# From source
go run ./cmd/clx
```
## Features
### Categories
Switch between categories with Tab. The header shows `top`, `best`, `ask`, `show` and `favorites` by
default. Pick which ones appear (and in what order) with the `--categories` flag:
```console
clx --categories top,new,best
```
Available categories are `top`, `best`, `new`, `ask`, `show` and `favorites`.
### Comment section
Press Enter to view the comment section.
The comment section has two modes: `read mode` and `navigate mode`.
In `read mode`, you can scroll using the usual vim bindings. You can also jump between top-level
comments (n/N), and you can expand and collapse threads by quote level
(h/l) or all at once (Enter).
In `navigate mode`, you can individually select comments and collapse specific threads. This is useful in longer threads
with many replies.
`circumflex` is read-only and does not support logging in, voting or commenting.
### Reader Mode
Press Space to read the linked article in Reader Mode. Just like in the comment section, you can jump between
headers using n/N, and you can scroll using the usual vim bindings.
### Favorites
Press f to add the highlighted submission to your favorites. Remove it with x.
You can also add a submission by `ID` from the command line:
```console
clx add [id]
```
Favorites are stored in `~/.config/circumflex/favorites.json` and pretty-printed to be human-readable and VCS-friendly.
### History
Visited submissions are marked as read, and comments added since your last visit are highlighted.
History is stored in `~/.cache/circumflex/history.json`. Disable tracking with `-d`/`--disable-history`, or clear it
with:
```console
clx clear
```
### Theme
`circumflex` uses your terminal's color scheme by default. To customize, write out the default config and edit it:
```console
clx default-theme
```
The theme lives at `~/.config/circumflex/theme.toml` and accepts named colors, hex codes, and ANSI 256 values.
## Keymaps
Main view keybindings โ press i in any view for the full list, including comment and reader mode.
| Key | Action |
|:-----------------|:-------------------------|
| Enter | View comments |
| Space | Reader Mode |
| Tab | Next category |
| r | Refresh stories |
| o | Open story in browser |
| c | Open comments in browser |
| f | Add to favorites |
| x | Remove from favorites |
| u | Toggle read |
| q | Quit |
## Usage
Run `clx help` or `man clx` for a full list of available commands and flags.