All in the <head> – Ponderings and code by Drew McLellan –


I’m please to be able to announce the early stages of a PHP project that I’ve been working on. Mailio is a simple web mail client, designed primarily for use by kids, but I’m sure it could have a number of uses where a really simple, stripped down web mail client is needed. The concept is that it enables children to use email to communicate uninhibited, keeping away the dangers of viruses, spam and poor judgment. Mailio also serves as a useful introduction to email. The interface is really stripped-down and basic, but is based on a typical desktop email client, making it an effective training tool for youngsters.

Through the use of a parentally-controlled white list, users (the kids) can only send and receive mail from known addresses. Anything else is filtered away for the parent or guardian to review. This offers parents the comfort of knowing that the only people the child is emailing are the people they’ve personally added to the white list. For known pests, there’s a blacklist too.

Technically speaking, it’s all written in PHP with XML for data storage – there’s no database. It operates using a basic POP3 email account, just like any other mail client. I’ve tried to make it pretty portable, so that it should run on a standard Linux or Windows hosting account. Each email is stored as a separate XML document (transformed for display with XSLT) so that should the user decide to move to a different mail client the data should all be really easily accessible.

Aside from its obvious use for children, you can switch off all the filtering and use it as a basic web mail client. It’s so easy to install (just drop a few files onto your web server and set the POP details) that it makes a good option if your ISP doesn’t provide web mail but, for example, you need to keep an eye on your mail from work. There’s no complex configuration and interaction needed between your web and mail servers – Mailio just uses standard POP3 and gets on with it.

At the moment it’s in what I guess you would call alpha. I’ve got the first working version together and have unleashed it on The Small Person for whom it was developed. She’s six and she loves it. She’s also fearless and complains like hell when things break. A typical end user. In the near future I’ll be looking for folks to help test this if they’re brave enough.

So, check it out. It’s all at