The Helium application is an email navigation client. What's a "navigation client" you say? A navigation client is a tool for exploring a set of email messages to see what's there, learn about the content, and find connections between things that may pass by when using the standard storage mechanisms and interfaces of existing mail clients.
Helium eschews the idea of folders in favor of a big pool of messages in which you can swim around, make searches, view interesting messages as you find them, and follow connections from messages that lead to new discoveries.
There are several major features of the application:
For a story on how these features, when used in concert, are valuable, see the anecdotes.
For details on how to use these features, see the manual.
While this feature may not be immediately obvious when Helium is used, it has been designed, from the outset, with flexibility in mind. This is a result of the KnownSpace architecture which encourages the creation of applications that are modular with loose coupling between modules. This means that any functional piece of Helium may be easily replaced without disrupting the rest of the system. If you want to know more about this aspect of Helium please see the developer documentation.
At this time Helium can retrieve email from remote IMAP stores, either over unencrypted connections (port 143) or over SSL encrypted connections (port 993). Retrieved mail is collected in a read-only fashion: the mail on the remote store remains unchanged. Mail can be retrieved from multiple folders on multiple mail servers. More details on email retrieval can be found in the configuration section of the manual.
Retrieved mail is listed in a tabular format. This same listing format is used for the results of searches. The listed email may be sorted by subject, from address or date. Double clicking a single message will display the selected message.
Helium provides rudimentary support for visualizing the collection of retrieved email. This is the feature of Helium that is perhaps most interesting but is also most incomplete.
A visual interface is provided that shows individual email messages on a two dimensional display (this is done using the excellent Touchgraph Graph Layout library). If implemented and turned on (this feature has an enormous impact on performance so is sometimes removed from the distribution) calculations are performed to determine if any of the messages have detectable semantic relationships with the others. If they do, they are connected by a line. These connections result in the display of visual clusters.
Messages may then be viewed by double clicking on a dot in the display. This cluster system has the potential to reveal connections between the members of the corpus that may not have been obvious in the textual listing.
Any message that is either plain text or a straight HTML message (not multipart MIME) may be viewed by double clicking on either the message in the listing or the associated dot in the visualization. A window will be displayed showing the content of the message.
If a message has content that cannot be viewed a window will be displayed with header information but without displaying the message content. It is still possible to reply to such a message if desired.
An interface is provided that does very simple text searching of the body and headers of email messages. The searching uses case sensitive string-matching. Results are displayed in a separate listing window where they may be sorted and viewed.
When viewing a single message, metadata searches may be performed by double clicking on any header item. Double-clicking on a from or to address will find all messages that are from or to an address that matches exactly. Double-clicking on a subject will find all messages with a matching subject. Double-clicking on a data will find all messages that are dated in a window from 12 hours before the message to 12 hours after the message.
As with text searching results are displayed in a listing window.
More details on searching can be found in the manual.
When viewing a message it is possible to compose a reply. It is also possible to initiate a new message. The from address of the message and other delivery specifics are dependent on configuration settings as described in the manual.
The Helium system saves its state at regular intervals and when the system is shut down. Configuration settings, email in the pool and user interface configuration are all saved.
Persistence is performed automatically without intervention from the user. You don't have to worry about saving the system when you quit or loading settings when you start up, no button presses or menu-clicks required.
The exception is with the user interface. The layout of the user interface may be saved to the persistence system but the system needs to known which layout to save. Therefore, if an alternate layout is preferred, that layout should be made in the GUI and then saved by pressing the provided button.