Important
This Python implementation is retired and read-only. Use the Rust successor, rocrp/linux-do-rs, for the maintained CLI and full-screen TUI.
CLI for linux.do forum.
uv syncuv run ldo top # weekly top topics
uv run ldo top -p daily -n 10 # daily top, 10 items
uv run ldo hot # hot topics
uv run ldo latest # latest by activity
uv run ldo latest -o views # latest by views
uv run ldo categories # list categories (incl. subcategories)
uv run ldo tags # list tags by topic count
uv run ldo read 482293 # read topic posts (rendered markdown)
uv run ldo read 482293 --page 2 # page 2
# Filter any feed by tag or category (id / slug / name)
uv run ldo latest --tag chatgpt
uv run ldo hot --category develop
uv run ldo top --category resource/cloud-asset --tag ssl
# JSON output (each row includes a `url`)
uv run ldo --json hot -n 5- No login required — uses
curl_cffiChrome impersonation for public read access. - Clickable terminal links — human-readable tables render topic/category/tag
names as terminal hyperlinks where supported; JSON output keeps explicit
urlfields. - Rendered markdown —
readrequests Discourserawposts, falling back to HTML→markdown, then renders links/headings/lists for terminal reading. - Rate limits — anonymous access is throttled; on HTTP 429 the CLI prints a clear
message and exits
75(instead of a traceback). Auth-walled content exits77. - Caching —
categories/tagsmetadata is cached under~/.cache/linux-do-py/for 24h (also speeds up--categoryresolution).
uv run ruff format . && uv run ruff check --fix .
uv run pytest