Execute arbitrary actions for each unread element of RSS/Atom feeds
Latest commit de26b2d Jul 7, 2016 @k0ral Bump version
Failed to load latest commit information.
src Remove redundant imports Jul 7, 2016
.gitignore Add gitignore Apr 30, 2016
.travis.yml Add Travis CI script Apr 30, 2016
LICENSE Can now send mails by interfacing with a SMTP server. Nov 1, 2011
README Add README Apr 30, 2016
README.md Add README Apr 30, 2016
Setup.hs Add setup script Jul 8, 2016
imm.cabal Bump version Jul 8, 2016



In a nutshell

imm is a tool that does only one thing: it retrieves a list of RSS/Atom feeds, and executes arbitrary actions for each of them (e.g. sending a mail).

Notably, imm makes it possible to use mail readers for feeds, for the sake of I-want-the-mutt-of-feed-readers zealots.

imm is written and configured in Haskell. To get started, please consult documentation of Imm.Boot module.

Informations about versions, dependencies, source repositories and contacts can be found in hackage.


Following numerous RSS/Atom feeds needs organization and aggregation, which is usually accomplished through feed readers. Although there are a lot of those, some people still feel unsatisfied with the existing implementations.

The expected features of a feed reader could be defined as follows:

  • it retrieves a bunch of items that have some attributes: an author, a date/time, a (possibly enriched) body;
  • items can be sorted, categorized, marked as read/unread, tagged, shared/forwarded;
  • items must be available from anywhere on the internet.

Luckily, there's already a widespread solution that provides such features: mail readers. Considering that, imm can project the RSS/Atom paradigm onto the mail one; this way, all the existing tools that work on mails can be leveraged to work on RSS/Atom feeds as well, no wheel reinventing.