TMut continued, Nils and Florian will like me now!

Chances are high that a project that was being planned will be canceled or at least delayed for weeks. This of course means that I will have to find myself something else to do with my time. Since finding another project usually takes a few weeks, I started with putting together that TMut thingy.

A few months ago I announced that I would start an E-mail client specifically targeted at very small screens. For example mobile phones. Not tablets with a high resolution and relatively wide screens. I was thinking more about those poor phones. I threw together some pieces here and there to get something started. And that was it, I was too busy with Tinymail itself, with Modest, with going to conferences, codecamps, yadi yada.

Today I committed a bunch of stuff for TMut so that it at least shows a first screen with your configured E-mail accounts and the selected account’s folder tree. I still have to make a folder view, then a message view. Perhaps all of it will be finished by this morning. Although I’m planning to go to a Dr. Lektroluv party in Amsterdam tomorrow night and I have to drive home. Maybe it’s a better idea to get some sleep this time?

Update: I’m still up, so that means that a bunch of things got implemented. Like reading E-mails (including HTML ones), IDLE and Push E-mail, getting a summary of a folder, selecting a folder, a thing that plays ringtones. Short version: all that a read-only E-mail client should do.

After that, a message editor, an account editor and then putting some operations in place. Like moving messages around, deleting them, renaming folders, deleting folders, creating folders. Nothing really difficult since TMut will use Tinymail of course. Tinymail’s demo-ui has most of this functionality already and I made it relatively simple to have it.

TMut's first screen

Something else that I have in mind is putting something together that converts SMS and MMS messages to correct RFC822 MIME messages in a Maildir folder, and make a system that activates Tinymail’s notification infrastructure. That way the application developer will see an SMS or MMS arrive exactly how a Push E-mail arrives during IDLE on IMAP. With a correctly set up folder view, he wont have to do anything. Except maybe implement playing a ring tone or something.

Something else I hope to fine tune, in Tinymail itself, is correctly using the socket in such a way that a typical GPRS chip turns itself off until an event in IDLE arrives, to avoid battery consumption. We obviously don’t want to drain the battery just for having Push E-mail on a phone.

TMut is just a little bit of UI to make it easy to start using all this juicy IMAP stuff. Not a demo-ui, but something that should be relatively usable or at least reusable by phone projects who’ll be using Tinymail as their E-mail client solution. This means that I’m trying to get its types and design as good as possible. You can indeed throw a three-screen read-only E-mail client together in a few minutes using Tinymail. But that’s not the idea here. If you want a sample of a quick/dirty one, check out Tinymail’s demo-ui which I mostly use for debugging Tinymail itself.

If you want me to make one for your device then well, I’m looking for a project! Perhaps we can use TMut as a starting point for this?

With GMail now supporting free IMAP, I predict E-mail is going to become increasingly popular on phones. Although rather limited in its capabilities, GMail’s IMAP server has IDLE (so it supports doing Push E-mail on phones). I hope GMail’s IMAP team will soon add support for CONDSTORE and QRESYNC.