Mozilla makes first milestone release of its WebApps project

Published Date
04 - Mar - 2011
| Last Updated
04 - Mar - 2011
 
Mozilla makes first milestone release of its WebApps project

It is no secret that Mozilla has been working on its own concept of a Web App store from quite a while now. Now we are seeing the first milestone of their Web Application project, which might just come integrated in Firefox 6, coming later this year.

The announcement of the Chrome web store was quite a disappointment, since it didn't take advantage of one of the strongest features of the open web platform, the fact that it was open, and the best aspect of HTML5 yet, cross-browser compatibility. The Chrome Web store could have been so much more. However it is what it is, a web application store that sells application that only run on the Google Chrome browser, although there is nothing in the way of them running on other browsers as well.

Mozilla envisioned an open web app ecosystem, where web apps and stores were decentralized — just as websites are today — and yet able to interact safely. They began work on their own model of a web app store ecosystem where anyone could create a web app store that could cater free or paid applications. A web store and web apps with open specifications that could run on any browser. What's more, a web developer need not even list their application in a store. They can directly provide a manifest for their app so it will become installable on any browser / dashboard that supports it. Web stores will have the advantage of making their applications easily discoverable and comparable with other applications, with ratings, descriptions, screenshots, and whatever other features the web store provides. Web stores can then compete on the quantity, and quality of the applications they list and the interface and reliability of the store itself.

There are a few challenges though. Google Chrome web applications are tied to a Google account. This way they are available on all computers you use as long as you are using the Google Chrome browser. However with Mozilla's system, the applications are decentralized across stores, so there is no central place where you add-ons will automatically appear. Mozilla plans to add support to Firefox Sync to synchronize applications across Firefox instances (on desktop and mobile), but this is not a cross-browser solution. It is also possible to tie your applications to a cross-browser, cross-platform web dashboard, making them available everywhere. This might make things centralized, but it still gives you the freedom to pick a central authority, or host your own server for the same.

Today Mozilla has released the first working preview of this system after reaching a stable specification. They have released add-ons for both Google Chrome and Firefox 4.0 that allow you to install applications from online stores. They have created a sample web app "store" for this purpose that has a number of small but great applications. In addition they have created a sample dashboard in HTML5.
 

While both the Chrome and Firefox extensions are functional, and allow the same application to be installed on either browser, the Firefox extension is much more advanced as of now. Both extensions provide a dashboard of installed applications. The Chrome extension makes use of the omnibar extensionAPI to allow one to search for installed applications by typing "app <space> [name]" (where [name] is the name of the application) in their omnibox. The omnibox will offer suggestions based on the installed applications.

The Firefox extension automatically launches applications you install using the extension as AppTabs (similar to Chrome's "Pinned tabs", a feature that's coming in Firefox 4.0). Additionally, the extension will detect when the website you are browsing has an associated web application and will allow you to install it — considering that this specification is still new, don't hold your breath. The extension also allows you to manage all installed applications from "about:apps". An experimental feature of the Firefox extension allows web applications to handle media keys. So an online media player application such as Last.FM (hypothetically) could be controlled using the media keys on your kayboard even if it is not an active tab, or Firefox is not the active window!

Developers can look at the specification of the web application manifest (which contains meta-data about hat application that will be used by the application "installer"), and the JavaScript API (which will allow such application deeper access to the browser and system than a normal website would have). In addition there is also a specification available for creating your own web store.

What is really interesting are some of the concepts Mozilla is flaunting which show how such applications could work together. For example, web applications could provide services such as:

  • Payment
  • Contacts
  • Calender

These services could then be used elsewhere. Your web mail app could use contacts from your contacts web app (with your permission of course) and schedule the mail to go according to information from your calender app, and could be subscribed to using your payment service app. While we are waiting for web apps to adopt these features, the service application could themselves provide fallback methods such as auto-entering contact information in web forms, or credit card information in payment pages.

Other examples revolve around web widgets that can work cross-platform. Opera widgets are already capable of this, and use the open web widgets specification by the W3C.

We now have a first look at Mozilla's optimistic look at the future of web applications, and for a first release it looks quite impressive. Of course going by the popularity of closed systems such as those of Apple, it is clear that openness and freedom aren't enough for this venture to be successful. The user-experience and polish of system matter, and this is an area where Mozilla should aim to deliver.