https://github.com/oliverroick/nea
RSS and Atom feeds delivered to my inbox
https://github.com/oliverroick/nea
atom-feed rss-feed
Last synced: over 1 year ago
JSON representation
RSS and Atom feeds delivered to my inbox
- Host: GitHub
- URL: https://github.com/oliverroick/nea
- Owner: oliverroick
- License: mit
- Created: 2018-02-17T10:34:30.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-04-26T06:45:30.000Z (about 4 years ago)
- Last Synced: 2025-02-08T06:12:21.965Z (over 1 year ago)
- Topics: atom-feed, rss-feed
- Language: Python
- Homepage:
- Size: 104 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# nea
Νέα – Greek for _news_.
## Why
* Getting updates online in ~2018~2021 still sucks. I don't want to use Twitter or Facebook or any other site that lets my attention span drop to the level of a two-year-old.
* Good old RSS feeds are the solution; they come with more signal and less noise. But I don't want to use an RSS feed reader, because I don't need an app to follow the four to five people I want to read regularly.
* I’m good at e-mail; over the years I developed techniques to stay on top of my inbox, so getting new reads delivered to my inbox would be perfect.
* Yet, I don’t want to get an e-mail every time someone I follow posts something new. I want to receive a digest once a week.
## What
I want to build a thing that:
* Takes in a list of RSS feeds. That list will be in a file for the time being.
* Pull the updates of all feeds.
* Parse the feeds and extract all items that were published during the last seven days.
* Sends an email to me, containing titles and links to all the new articles grouped by blog.
## Test
AWS Lambda runs the Lambda handler as a script; we need absolute imports to sub-modules (in this case the `parsers`). Py.test runs the Lambda handlers from a package, so we need to add the `lambdas` directpry to `PYTHONPATH` to enable absolute imports.
```sh
PYTHONPATH=./lambdas/ py.test
```
## Deploy
To deploy, run the deployment script:
```sh
./deploy.sh --email=joe@example.com --profile=joe --stage=prod
```
### Arguments
| argument | default | description |
|----------------------|-----------|-------------------------------------------------------------|
| `email` | | The address used as sender and receiver for the feed email. |
| `profile` (optional) | `default` | AWS credentials profile to use when deploying. |
| `stage` (optional) | `dev` | The name of the stage. |