Skip to content

Repository files navigation

Gator — RSS Feed Aggregator

Gator is a CLI-based RSS feed aggregator written in Go. It lets you register users, follow RSS feeds, scrape new posts on a schedule, and browse recent entries — all from the terminal.

Prerequisites

  • PostgreSQL — a running Postgres instance with a database created for gator.
  • Go 1.26+install Go.

Install

go install github.com/VoluteTech/gator@latest

Make sure $GOPATH/bin is in your PATH.

Setup

1. Create a Postgres database

createdb gator

2. Run the database migrations

From inside the repo:

goose -dir sql/schema postgres "postgres://<user>:<password>@localhost:5432/gator?sslmode=disable" up

3. Create the config file

Create ~/.gatorconfig.json:

{
  "db_url": "postgres://<user>:<password>@localhost:5432/gator?sslmode=disable",
  "current_user_name": ""
}

Commands

Command Description
gator register <name> Create a new user and set them as the current user
gator login <name> Switch to an existing user
gator users List all registered users (current user marked)
gator addfeed <name> <url> Add an RSS feed and auto-follow it
gator feeds List all feeds and who added them
gator follow <url> Follow an existing feed
gator following List feeds you follow
gator unfollow <url> Unfollow a feed
gator agg <duration> Start the scraper loop (e.g. 30s, 1m, 5m)
gator browse [limit] Browse recent posts from your feeds (default limit: 2)
gator reset Delete all users (destructive)

Quick start

gator register alice
gator addfeed "Hacker News" https://news.ycombinator.com/rss
gator agg 30s        # scrape every 30 seconds (Ctrl+C to stop)
gator browse 5       # see the last 5 posts

About

Gator is an RSS feed aggregator.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages