{"id":49293329,"url":"https://github.com/ali5ter/clu","last_synced_at":"2026-04-26T02:00:32.029Z","repository":{"id":353863315,"uuid":"1220992255","full_name":"ali5ter/clu","owner":"ali5ter","description":"🖥️ A terminal interface for the commandlineuser.com CLI catalogue","archived":false,"fork":false,"pushed_at":"2026-04-26T00:10:06.000Z","size":5935,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-26T00:35:09.584Z","etag":null,"topics":["bubbletea","catalog","charmbracelet","cli","command-line-tools","developer-tools","golang","pipeline","terminal","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ali5ter.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-25T15:59:53.000Z","updated_at":"2026-04-26T00:15:53.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ali5ter/clu","commit_stats":null,"previous_names":["ali5ter/clu"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/ali5ter/clu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ali5ter%2Fclu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ali5ter%2Fclu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ali5ter%2Fclu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ali5ter%2Fclu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ali5ter","download_url":"https://codeload.github.com/ali5ter/clu/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ali5ter%2Fclu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32283294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T18:29:39.964Z","status":"online","status_checked_at":"2026-04-26T02:00:05.962Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bubbletea","catalog","charmbracelet","cli","command-line-tools","developer-tools","golang","pipeline","terminal","tui"],"created_at":"2026-04-26T02:00:31.375Z","updated_at":"2026-04-26T02:00:32.024Z","avatar_url":"https://github.com/ali5ter.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable-file MD041 --\u003e\n\n![clu demo](examples/clu_demo.gif)\n\n# clu\n\nYes, it's a command-line tool for a website about command-line tools. I know.\n\n[commandlineuser.com](https://commandlineuser.com) catalogues and scores CLI tools. It seemed only right\nthat you should be able to explore it without leaving the terminal — and that the output should be\npipeable into the very tools it's recommending.\n\nThat's the joke. It also happens to be useful.\n\n---\n\n## Install\n\n**Homebrew** (macOS and Linux):\n\n```bash\nbrew tap ali5ter/clu\nbrew install clu\n```\n\n**Binary** (macOS and Linux, no Go required):\n\n```bash\n# macOS Apple Silicon\ncurl -sL https://github.com/ali5ter/clu/releases/latest/download/clu_darwin_arm64.tar.gz | tar -xz\nsudo mv clu /usr/local/bin/\n\n# macOS Intel\ncurl -sL https://github.com/ali5ter/clu/releases/latest/download/clu_darwin_amd64.tar.gz | tar -xz\nsudo mv clu /usr/local/bin/\n\n# Linux arm64\ncurl -sL https://github.com/ali5ter/clu/releases/latest/download/clu_linux_arm64.tar.gz | tar -xz\nsudo mv clu /usr/local/bin/\n\n# Linux amd64\ncurl -sL https://github.com/ali5ter/clu/releases/latest/download/clu_linux_amd64.tar.gz | tar -xz\nsudo mv clu /usr/local/bin/\n```\n\n**Go**:\n\n```bash\ngo install github.com/ali5ter/clu@latest\n```\n\n---\n\n## Usage\n\nRun it in a terminal and you get the TUI:\n\n```bash\nclu\n```\n\nPipe it somewhere and it emits JSON:\n\n```bash\nclu | jq '.[] | select(.score \u003e= 9)'\n```\n\n### Flags\n\n| Flag        | What it does                                       |\n| ----------- | -------------------------------------------------- |\n| `--json`    | Force JSON output even in a terminal               |\n| `--offline` | Use the local cache — no network request           |\n| `--no-tty`  | Pipeline mode regardless of how you're running it  |\n\n---\n\n## TUI\n\nThree tabs — Catalog, Articles, About — switched with `tab` and `shift+tab`.\n\n### Catalog\n\nA scored list of CLI tools on the left; detail on the right. The score colours tell you\nsomething: green means the tool rated highly on utility, maturity, and maintenance.\nGrey means it's worth knowing about but didn't break into the top tier.\n\n### Articles\n\nFeature articles from the site rendered in the terminal. Navigate the list on the left,\nread on the right. Scroll the article with `shift+↑` and `shift+↓`.\n\n### Key bindings\n\n| Key                      | Action                                |\n| ------------------------ | ------------------------------------- |\n| `↑` / `↓` or `j` / `k`  | Navigate list                         |\n| `/`                      | Filter                                |\n| `enter`                  | Open in browser                       |\n| `ctrl+j`                 | Output selected item as JSON and exit |\n| `shift+↑` / `shift+↓`   | Scroll detail pane                    |\n| `tab` / `shift+tab`      | Switch tabs                           |\n| `q`                      | Quit                                  |\n\n---\n\n## Pipeline mode\n\n`ctrl+j` in the TUI exits and emits the selected catalogue item as JSON — so you can\nbrowse visually and hand off to `jq`, `fzf`, or anything else that reads stdin.\n\n`--json` skips the TUI entirely and dumps the full catalogue:\n\n```bash\nclu --json | jq '.[0]'\n```\n\nCached data lives in `~/.cache/clu/`. Use `--offline` if you're on a plane.\n\n---\n\n## Built with\n\n- [Bubble Tea](https://github.com/charmbracelet/bubbletea) — Elm-architecture TUI framework\n- [Lip Gloss](https://github.com/charmbracelet/lipgloss) — terminal styling and layout\n- [Bubbles](https://github.com/charmbracelet/bubbles) — list, viewport, textinput components\n- [Glamour](https://github.com/charmbracelet/glamour) — markdown rendering\n\n---\n\n## commandlineuser.com\n\nThe catalogue is updated nightly. Every item has a score, a confidence value, and an\nexplanation of what drove both. No curation by follower count or GitHub stars alone.\n\n[commandlineuser.com](https://commandlineuser.com) ·\n[Methodology](https://commandlineuser.com/about/methodology) ·\n[About](https://commandlineuser.com/about)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fali5ter%2Fclu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fali5ter%2Fclu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fali5ter%2Fclu/lists"}