TLDR;
I created defe(devfeed), a WebApp & CLI for aggregating popular "Tech" feeds for developers & Tech Enthusiasts
Why did I built this ¯_(ツ)_/¯
Well I like reading tech, this involves subscribing to newsletters & listening to various podcasts.
But the only problem with this is that all of this is distributed causing me to waste my time by installing various apps (which I open only once per day, No hard feelings for DEV, I ❤️ it) & subscribing to a number of newsletters.
Well of course you have feedly but hey its not free right ?
That's why I thought of creating a FOSS alternative which is
- Simple Enough to use (Minimal UI)
- Is available for multiple clients (PWA & CLI for terminal lovers)
- Can show me information while I'm travelling
Features ✨
- PWA
- Read & Share Stories
- Dark Mode *
- Minimal UI
- CLI
- Filter Feed
Is that it ?
No
defe is a package, so you can make Bots 🤖 using it.
from defe import defe
import pprint
f = defe.feed()
pprint.pprint(f.news())
This will print all the News from available News Feeders. You can read the documentation on how to use the package.
How its built 🤔
The architecture is fairly simple
Multiple feeders are fetched at the same time using ThreadPoolExecutor()
& are kept in a cache.
Feeders are web-sources which have a public feed (RSS/Atom) link
You can have a look at all the feeders here.
Let's say you request /news
or run defe news
(on CLI) all the available feeders under News category would be fetched simultaneously and are pushed in a disk based cache, subsequent requests will come from this cache.
For now the cache expiry time-limit is set to 1 hr by default (future releases might have a option to clear cache manually)
I used the following stack to build defe
- Python
- JavaScript
Few pre-built libraries/components which helped me build defe
- MaterialzeCSS For the front-end of WebApp
- feedparser For parsing RSS/Atom feeds of web sources.
- diskcache Used for temporarily storing feeds for faster access.
How it looks 🔥
Here is a demo for the defe CLI
And the WebApp Looks like
Contribute 🤗
I still have a lot of ideas to improve defe, but not all of it I can do alone, I require your help ❤️
Feel free to contribute at
You can also request feeders by commenting your favourite sites below
or add them yourself
Add your favorite feeders #1
Send in RSS/Atom Feeds of your favorite sites, newsletters, podcasts. Make sure you are only editing one of these files
Don't forget to read the CONTRIBUTING guidelines before sending any PR.
This issue will remain open so you can always contribute
Future Vision 👁️
Some of the things I wish to implement in future
- Push Notifications
- Bookmark Stories
- Play Podcasts right in terminal (for defe CLI)
- Custom Feeds
You can have a look at projects board for more upcoming features in defe.
Feedback 💭
Did you like defe ? or maybe its something you want to say, comment below
You can reach me directly at
Telegram | Twitter | E-mail
Top comments (3)
Niiiiice!
Reports of RSS's death are greatly exaggerated.
This is really good! I always wanted something like this!
Glad you liked it 🤗