Hi William and others,<br><br>As Turnsole is a great mail interface, I was thinking about having it generic to multiple servers or mail sources, to fit many use cases.<br><br>Explicitely, the Turnsole::Client class (<a href="https://github.com/wmorgan/turnsole/blob/master/lib/turnsole/client.rb">https://github.com/wmorgan/turnsole/blob/master/lib/turnsole/client.rb</a>) could be turned into a Turnsole::Client module instead,<br>

which implements the necessary abstract methods for the interface, and which needs to be included in every client adapters (like DataMapper adapters are working for instance).<br>Built-in Turnsole adapters would be in lib/turnsole/client/. That way, we could easily implement Turnsole adapters for many sources, such as:<br>

Heliotrope (for sure, the official adapter),<br>IMAP (direct connection),<br>Gmail (simpler adapter using the IMAP adapter),<br>Maildir/Mbox,<br>NotMuchMail (which is a great Sup-like email back-end),<br>upasfs,<br>etc.<br>

<br>The main reason why I'm posting that, is that I really like the Turnsole ncurses based interface,<br>but sometimes I'd like to check emails directly from imap (when not on my computer for instance).<br>I also know that NotMuch is missing a good ncurses-based client (that's why I've Cc'd them).<br>

<br>What do you think? Is there limitations I didn't think about?<br clear="all"><br>-- <br>Vivien Didelot,<br><a href="http://vivien.didelot.org" target="_blank">vivien.didelot.org</a><br>