https://github.com/ezeoleaf/tblogs
A simple and useful blogs' reader for your terminal
https://github.com/ezeoleaf/tblogs
cli go go-cli golang tcell terminal-app tui tview
Last synced: about 1 month ago
JSON representation
A simple and useful blogs' reader for your terminal
- Host: GitHub
- URL: https://github.com/ezeoleaf/tblogs
- Owner: ezeoleaf
- License: mpl-2.0
- Created: 2020-08-27T14:59:07.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-07-23T14:04:30.000Z (7 months ago)
- Last Synced: 2025-07-23T16:15:03.680Z (7 months ago)
- Topics: cli, go, go-cli, golang, tcell, terminal-app, tui, tview
- Language: Go
- Homepage:
- Size: 65.6 MB
- Stars: 49
- Watchers: 3
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-tuis - tblogs
README
# tblogs
A fast, modern, and hackable terminal blog reader written in Go. No external API dependencies—just a local config file and RSS/Atom feeds.
---
## Features
- Browse and follow a curated list of tech/dev blogs
- Read posts from any RSS or Atom feed
- Save your favorite posts
- Search and filter blogs
- All data stored locally in a config file (no external API)
- Cross-platform: macOS, Linux, Windows
- Keyboard-driven TUI (Terminal User Interface)
---
## Installation
### Homebrew (recommended, after release)
```sh
brew tap ezeoleaf/tap
brew install tblogs
```
### Download a Release
- Go to [Releases](https://github.com/ezeoleaf/tblogs/releases) and download the binary for your OS.
- Unpack and move it to a directory in your `$PATH` (e.g., `/usr/local/bin`).
### Build from Source
```sh
git clone https://github.com/ezeoleaf/tblogs.git
cd tblogs
make build
./bin/tblogs
```
---
## Usage
```sh
tblogs
```
- Use keyboard shortcuts to navigate:
- `Ctrl+B` — Blogs
- `Ctrl+T` — Home
- `Ctrl+P` — Saved Posts
- `Ctrl+H` — Help
- `Ctrl+F` — Search
- `Ctrl+S` — Save/follow
- `Ctrl+D` — Delete saved post
- `Ctrl+L` — Toggle last login mode. When on, only posts published after the last login date are shown.
- Select a blog to view its posts (fetched live from the feed)
- Press `Enter` on a post to open it in your browser
---
## Configuration
- Config is stored in the OS-appropriate location:
- **macOS/Linux:** `~/.config/tblogs/data.yml`
- **Windows:** `%APPDATA%\tblogs\data.yml`
- On first run, the config is created and pre-populated with a curated list of blogs.
- You can edit the config file directly to add/remove blogs, or use the app UI.
- Default blogs are defined in [`internal/config/default_blogs.yml`](internal/config/default_blogs.yml).
---
## Releases & Distribution
- Binaries are built automatically for each release (macOS, Linux, Windows).
- See the [Releases](https://github.com/ezeoleaf/tblogs/releases) page for downloads.
---
## Screenshots



---
## Contributing
Pull requests and issues are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md).
---
## License
[Apache License 2.0](LICENSE)