Kylix  Forum
 
 
 
 
 
Home
 
Links
 
Artikel
 
TurboMail
 
Forum

Our Kylix Project: TurboMail

A Powerful Database-Driven E-Mail Client Written in Kylix

Last update: 1/6/2003, Step 10

The Project

Since Kylix 1 I have been working on an open source project for Kylix, which has first been published in the German computer journal Linux Enterprise. The project is an e-mail client, which stores its messages in a relational database and can therefore mange a huge amount of e-mails really fast. The implementation of the protocols is therefore not in the center of that project, but storing and managing the messages. The POP3 and SMTP part is delegated to the Indy components, which come with Kylix. The database is TurboDB from dataWeb (see below). Since it is a CLX application, you can compile it either with Delphi or Kylix and run it on Windows as well as on Linux.

The project is documented in English so we can reach the greatest audience possible. It is work in progress and I will publish new versions as I have the time to continue working on it. In its current state TurboMail has reached a level, where we are really using it in our office for the daily work. There are five people accessing the same database, which has currently a size of almost 0,5 GB. And what can I say: I works great! Please feel free to tell me about our thoughts in the TurboMail discussion forum.

Feature List

This is a list of features imagined for TurboMail. Some of them are already put to work others are open and the list is still growing. If you have your own ideas for the feature list, please go to the discussion forum or write me an e-mail.

Done Managing thousands of e-mails really fast
Done Offering access to e-mails for multiple users
Done Creating any folder structure needed
Done Managing attachments in blob fields
Done Sharing e-mails within the team (e.g. support team)
  Sending an e-mail to a list of receivers
Done Re-submit an e-mail at a given day
Done Creating additional databases and switching between them
Done Easy and fast back-up of all data
  Making user management password-controlled
Done Improving address book: More data, more sorting, searching...
Done Powerful searching in e-mails, word indexing and super-fast document search
Done To-do-list: Many to-do-items come from or lead to an e-mail
Done Viewing HTML mails
Done Importing address book contacts from Netscape
Done Calendar for a quick reference
Done Configurable default view for each folder, column selection, column sequence, sorting order of messages
Done Check your e-mails on the server without downloading them and decide which ones to fetch and wich ones to delete immediately
  Integrate encryption/decryption facilities e.g. using GnuPP

A check mark means, it's already implemented.

Screenshots

Look at some screenshots of both the Windows and the Linux version of TurboMail.

Using TurboMail

The download file includes all Kylix source code files. In order to compile and run the project you need a version of Kylix from Borland and the TurboDB database from dataWeb. The current version of TurboMail has been developed with Kylix 3 and TurboDB 4.1. dataWeb sponsors a free special edition of this database, which can be used used deliberately like the commercial edition but only with the TurboMail project. But this special version is currently not available for TurboDB 4. For the time being you must use a regular edition or the trial version of this database. dataWeb will have the special edition ready before mid of June.

Download TurboDB 4 Trial Edition
TurboDB 4 for Linux and Windows is available here

Download TurboDB 3.4 TurboMail Special Edition (for TurboMail 0.7 and below)
Linux edition for use with Kylix (not the Open Edition) (3.2 MB)
Windows edition for use with Delphi (not the Standard Editions) (5.0 MB)

Download TurboMail source code
The source code is identical for the Linux and Windows version of the program.
TurboMail source code (70 kB)

Participating

We welcome everybody who wants to take part in the development or just give us hints or tell us about his or her wishes for TurboMail. Please write to the author.

These are some tasks, we would need your participation for:

  • Beautify the user interface
  • Improve the HTML view
  • Import e-mails and/or contacts from other e-mail formats
  • Show holidays from other countries and religions in the calender
  • A more complete protocol implementation (IMAP?)

Recent Changes

The current version tool a lot of time. First, it was ported to Kylix 3, then to Delphi 7, then to TurboDB 4... And there are lots of improvements that make it worth being version 1.0. It is the version we are using in the office now in our daily work!

Step 10

  • Ported to TurboDB 4 and Kylix 3/Delphi 7
  • You can now enter the name of the receiver into the e-mail field in a new message. TurboDB will try to find this name in the Name column of the contact table and replace it if found and unique.
  • You can define groups of contacts now.
  • A message can be sent to all contacts within a group. This is not CC or BCC, it is a multi-send option.
  • The transfer dialog has been improved
  • A lot of little bugs have been fixed
  • Authentication for SMTP is supported
  • The user dialog has been improved and beautified.
  • On Windows, attachments can be opened directly through a new menu item in the attachment list.
  • New e-mails are now created in the draft folder instead of the outbox. Only when you press the "Send and Close" button in the e-mail window the e-mail is moved to the outbox.
  • f the new e-mail is a response to an existing one, its state is automatically set to responded, when saved with "send and close". The same is true for forwarded messages.
  • Attachments haven't been copied when forwarding an e-mail.
  • Unnecessary records in the attachment table, when replying to an e-mail.
  • When emptying a folder, the attachment window showed the list of all attachments in the table.
  • Indy has problems with mails containing hyphens like "--" or "----". A workaround in the download code fetches these e-mails nevertheless.
 
 

Feedback: info@dataweb.de
Copyright © 2003 dataWeb GmbH, Alle Rechte vorbehalten