Если вы можете использовать бэкэнд Java или если вы не против развертывания в Google App Engine, вы можете взглянуть на Google Web Toolkit. Они имеют отличные tutorials и example applications, включая Mail app, которые могут быть изменены в соответствии с вашими потребностями.
Если вы предпочитаете не использовать GWT, вы можете использовать любой из нескольких библиотек пользовательского интерфейса JavaScript там, где есть бэкэнд; YUI, Ext, jQuery UI, MochaUI, чтобы назвать несколько. Вы также можете использовать собственный пользовательский интерфейс, используя библиотеки кросс-браузера (YUI, Ext JS, jQuery, MooTools и т. Д.) Или даже просто старый JavaScript/HTML/CSS/DOM.
Все зависит от ваших требований, насколько вы хотите контролировать свой код, выглядеть и чувствовать себя, поведение и ваши предпочтения.
В идеале вы захотите освежить основы JavaScript и объектно-ориентированный JavaScript, а также HTML/CSS и ваш серверный язык, чтобы вы могли создавать приложение со структурированным, чистым и поддерживаемым кодом. Книги по этой теме легко найти.
Реально, просто найдите учебник в стеке разработки по вашему выбору и продолжайте оттуда.
Лучше всего попытаться найти баланс двух.
Я могу добавить, что другие для мощных библиотек пользовательского интерфейса являются Sproutcore (http://sproutcore.com/) и Cappucino (http://cappuccino.org/). Это позволит полностью абстрагировать ваше приложение от традиционных веб-технологий (HTML/CSS/DOM). –