Getting Started
Last updated
This page walks through building go-rss-reader from source, adding the first feed, and reading the first full article.
Prerequisites
| Item | Requirement |
|---|---|
| Go | 1.24.3 or higher (go.mod) |
| C compiler | gcc or clang with CGO_ENABLED=1; github.com/mattn/go-sqlite3 is a CGO package |
| Terminal | Color support |
| OpenAI API key | Optional; only the LLM news digest needs it |
| Open original article | open on macOS, xdg-open on Linux, cmd /c start on Windows |
Installation
git clone https://github.com/pardnchiu/go-rss-reader.git
cd go-rss-reader
CGO_ENABLED=1 go build -o RSSReader ./cmd/cli
The module name in go.mod is rss-reader, not the GitHub path, so go install github.com/pardnchiu/go-rss-reader/... does not work; build from source or run directly with go run ./cmd/cli.
First Run
./RSSReader
The app starts with no feeds. Press
Tabtwice to move focus from News List through Preview to CommandType the command below and press
Enter:add https://feeds.bbci.co.uk/news/rss.xmlPress
Ctrl+Rto fetch now; once the status bar showsFound N new articles, getting full content..., full-text extraction runs in the backgroundPress
Tabto return to News List and move with↑/↓; Preview shows the extracted full textPress
Ctrl+Oto open the original article in the default browser, andCtrl+Cto quit
When run inside the project directory (the working directory has go.mod), the database is created at ./rss.db; see Configuration for the other locations.
Enable the LLM Digest
Type in the Command pane:
apikey sk-xxxxxxxxxxxxxxxxxxxxxxxx
The next time new articles arrive and full-text extraction finishes, the Summary pane shows a news digest in Traditional Chinese. See LLM Digest for the trigger conditions and what gets sent.