A fast, friendly command line for public Goodreads data. One static binary,
no API key, no account. It reads public book, author, series, list, quote,
user, shelf, and genre pages into rich JSON, JSONL, CSV, TSV, or a table,
and routes around the Goodreads WAF through open endpoints so search and
shelves keep working.
Install
Go:
go install github.com/tamnd/goodread-cli/cmd/goodread@v0.1.0Homebrew:
brew install --cask tamnd/tap/goodreadScoop:
scoop bucket add tamnd https://github.com/tamnd/scoop-bucket
scoop install goodreadContainer:
docker run --rm ghcr.io/tamnd/goodread:0.1.0 search "dune"Or download a prebuilt binary for your platform from the assets below.
Changelog
Fixes
- 10cf0e2: fix: satisfy golangci-lint (Tam Nguyen Duc 1218621+tamnd@users.noreply.github.com)
Other
- 06ebc8f: Initial commit: goodread, a CLI for public Goodreads data (Duc-Tam Nguyen tamnd87@gmail.com)
- 11c5b34: Polish the GitHub release notes (Tam Nguyen Duc 1218621+tamnd@users.noreply.github.com)
Verify
Every archive is listed in checksums.txt, which is signed with cosign
(keyless). Verify the checksum signature before trusting a download:
cosign verify-blob checksums.txt \
--certificate checksums.txt.pem \
--signature checksums.txt.sig \
--certificate-identity-regexp 'https://github.com/tamnd/goodread-cli' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com'The container image and its SBOM are signed the same way.
Links
Not affiliated with, endorsed by, or sponsored by Goodreads or Amazon.
goodread reads only public pages and stays within polite rate limits.