Jason Hunter of MarkLogic has unveiled a new application that allows you to search and analyze email traffic. The service is called MarkMail, and you can check out the Apache instance to see it at work.

The application is written using MochiKit.

Jason gave us detailed information on the goals:

As you’ll see with the chart on the home page, one of our goals with the site has been to focus heavily on analytics. We have lots of graphs and counts, and you’re able to use them to watch Apache’s historical growth and each individual project’s growth. Every query you write gets its own histogram chart.

Another goal has been interactivity. Every search result screen gives you lots of ways to refine your search (by sender, list, attachment type, etc). Plus we did a lot with keyboard shortcuts. You can hit “n” and “p” to move to the next and previous result and “j” and “k” to move up and down the thread view. There’s a lot of little things like this. Plus if your result message includes Office or PDF files they’re in-line interactive too.

Another goal has been to focus on community. We could have launched MarkMail with 50,000,000 emails from many sources but I think it’s better to start with focus. In fact, I’ll be at ApacheCon and the Hackathon next week, along with my co-developer Ryan Grimm, looking for people’s suggestions and maybe on the spot adding in a few of them. There’s also potential to explore some fun one-off analytics, too.

As part of the focus on communities, we setup MarkMail so it recognizes that Apache itself consists of many communities. If you go to http://apache.markmail.org you search all Apache emails, but if you go to http://struts.markmail.org then you’re auto-limited to just Struts lists. Same for tomcat, spamassassin, httpd, and so on. You can always limit your search using “list:struts” in your query, but using the domain handles that a bit more elegantly.

Notes on using the site:

Search using keywords as well as from:, subject:, extension:, and list: constraints

The GUI doesn’t yet expose it, but you can negate any search item, like -subject:jira.

You can sort results by date by adding order:date-forward or order:date-backward to your query

Remember to use “n” and “p” keyboard shortcuts to navigate the search results