packages feed

imm-1.1.0.0: README.md

# imm

*imm* is a tool to execute arbitrary actions for each new element from RSS/Atom feeds (e.g. sending a mail, or writing a file).

*imm* is written and configured in *Haskell*.

Technical documentation is available at [hackage][1].

To get started, please consult documentation of `Imm.Boot` module.


## Example workflows

### Online feed reader

For the sake of *I-want-the-mutt-of-feed-readers* zealots, it is possible to turn any mail reader into a feed reader, by having *imm* send an e-mail with unread elements to an arbitrary address.
You can then browse your feeds through your favourite mail reader, and leverage any mail-related tool on your feeds.
Bonus points if your mail reader is online as you can now access your feeds from anywhere in the internet.

Check out `Imm.Hooks.SendMail` module.

### Offline read-it-later

*imm* is able to store a local copy of unread elements, to read them later while offline for example. External links won't work offline though.

Check out `Imm.Hooks.WriteFile` module.


## Example usage

- Subscribe to a feed:

  ```
  imm subscribe http://your.feed.org
  ```
- Import feeds from an OPML file:

  ```
  cat feeds.opml | imm import
  ```
- List subscribed feeds:

  ```
  imm show
  ```
- Unsubscribe from a feed:

  ```
  imm unsubscribe http://your.feed.org
  ```
- Check for new elements without executing any action:

  ```
  imm check
  ```
- Execute configured actions for each new element from subscribed feeds:

  ```
  imm run
  ```
[1]: http://hackage.haskell.org/package/imm