MozillaZine

Delivering Rich Web-based Applications with Mozilla

Wednesday December 4th, 2002

Andy Cavatorta writes: "Mozilla can be used to deliver rich stand-alone applications as easily as you can deliver documents. And I brought proof!

"My example is a client program that generates and manages a rich GUI, processes data, and communicates with the server in the background. There's even some server push and snap-in code libraries. And it's all W3C compliant. Proof of the power of the lizard!"

Andy's application is an email client called Nervemail which runs entirely in a browser. It allows you to set up multiple POP3 mail accounts and then access your messages through a Web-based GUI. A demo is available on the site. If you decide to set up an account, remember that the application is still in the alpha stage of development, so don't rely on it for anything important. You'll probably want to check the 'leave mail on server' box for each of your POP3 accounts (in Edit > Options) so that you can still collect your mail with your regular email client.


#39 Re: Code question

by andyc <andy@nervemail.org>

Friday December 6th, 2002 4:07 PM

You are replying to this message

That would ba a long list. But the first two things that come to mind are:

1. An event model that really works. The W3C's event model (used in Moz) is nimble, powerful, accessable, and actually straightforward and usable. And in the few spots where there is ambiguity in the W3C spec, Moz implementations fill in the gaps with with practical and consistent solutions. And addEventListener() is just *so* much more nimble than onmouseover etc..

2. Support for extention of pretty much any DOM element as a programming object by adding custom methods and properties. IE does that a wee bit. Moz does it very thoroughly. And you can just imagine what THAT opens up!

3. While both browsers have their crash bugs, Moz is the one that holds up under serious scripting and memory loads.

I've occasionally plucked widgets out of this codebase to use in apps I make for clients. To make things work in IE takes a lot more code and time. And the code gets filled up with weird hacks to get around IE's limitations. And it's a sad thing to have to fill clean code with hacks.

I'd like to port Nervemail to IE someday. But I never would have had the fortitude to build the prototype in IE with just JS and XHTML. The hacks and cruft would totally obscure the architecture, and a clean structure would not have emerged. It's like, you could probably write a Java implementation made out of DOS batch files. And you could probably build the Eiffel Tower with bars of wet soap if worked reeeeaally hard. But you wouldn't do it.

Remember that MS invested so much in taking over the browser market to *prevent* the Web from replacing the OS.

Like many other people, the application-in-a-browser idea grabbed me back in '96 when javascript shipped with Navigator 2.0. After all these years, Moz makes it possible. And it's even standard!