rss2email 0.1.0

An RSS feed aggregator that notifies you of new posts via email.
Documentation
rss2email-0.1.0 has been yanked.

Rss2Email

Build & Tests GitHub milestone Status Minimum Supported Rust Version

A small program capable of aggregating content from multiple RSS/Atom feeds and mailing them to you in a practical summary email.
Keep track of your favorite blogs that don't feature an update newsletter or similar service.

Dependencies

You'll need Rust installed to compile this software.

Installation

Currently, you can only build this from source. Clone this repository and run:

cargo build --release

Alternatively, you can build a Docker image that you can either run yourself or publish to AWS Lambda.

Check out the build from source section of the wiki for more information.

Configuration

Rss2email requires some environment variables to work. These can be provided either in your shell or as entries in a .env file.

  • EMAIL_ADDRESS: the mail address you will receive the feed content

  • DAYS: this value indicates up to how many days in the past we go to search for entries

  • FEEDS: a list of semicolon-separated feed URLs.
    eg: "https://blog.rust-lang.org/feed.xml;https://www.linux.org/articles/index.rss"

  • EMAIL (optional, defaults to SendGrid): Which provider to use to send the email.
    Can be set to EMAIL_COMMAND as an alternative if you have mail or sendmail installed in your system

  • API_KEY (optional): Your SendGrid authentication key.

More details are available in the Running the code wiki section.

Usage

Running the code in debug mode won't send any emails and will instead output the generated HTML in the console.

cargo run

It is recommended to try this out first and make sure that all your feeds and config variables are correctly set up.

Running the project in release mode will send the emails

./target/release/Rss2email
# or
cargo run --release

Contributing

Thanks for considering contributing!

Read this.