This article needs to be updated. Please help update this article to reflect recent events or newly available information. (June 2011)
Original author(s)Mozilla Labs
Initial releaseAugust 26, 2008 (2008-08-26)[1]
Stable release
0.6 / October 16, 2012; 11 years ago (2012-10-16)
Preview release
0.6.2pre / September 3, 2011; 12 years ago (2011-09-03)
Written inJavaScript
Size595 KB
TypeAdd-on for Mozilla Firefox
WebsiteUbiquity on

Ubiquity, a legacy extension for Mozilla Firefox, was a collection of quick and easy natural-language-derived commands that act as mashups of web services, thus allowing users to get information and relate it to current and other webpages. It also allowed Web users to create new commands without requiring much technical background.[2]


Ubiquity's main goal was to take a disjointed web and bring a user everything they need. This was accomplished through a command-line-like interface that was based on natural language commands. These commands were supplied both by Mozilla and by individual users. Commands were written in JavaScript or Python and either directly typed into the command editor that comes with Ubiquity or subscribed to. Commands to which a user subscribed were automatically updated when the author updated the code.[3] Up to the end of development, there was no limit as to what these commands can do, posing a large security risk. There were plans for Ubiquity to have a trust network that would allow users to evaluate the trustworthiness of a particular command before subscribing to it, but these plans never came to fruition.[4]

Ubiquity had commands that allowed users to insert maps anywhere, translate on-page, highlight any code, and many other features.[5]

Development history and roadmap

The architectural design for Ubiquity 0.1.3 was focused on separating functions into well-defined objects, an idea borrowed from the design of commands in the Archy project. The browser window functionality was separated into per-window and global objects. The per-window command manager object mediated between the context menu, command entry and natural-language parser objects and the commands themselves. The global objects marshall application-wide services such as built-in command feeds.[6] Efforts to localize Ubiquity into different languages have also been made.[7]

The design goals for Ubiquity 0.5 focus on making it easier to experiment with new User Interfaces and implement security.[8][9]

After development of Ubiquity was ceased by Mozilla, a community-maintained version was actively developed until 2016.[10]

See also


  1. ^ Raskin, Aza (2008-08-26). "Introducing Ubiquity". Mozilla Labs. Archived from the original on 2009-03-08.
  2. ^ Boulton, Clint (2008-08-26). "Mozilla Ubiquity enables mashups for dummies via Firefox". eWeek.
  3. ^ "Ubiquity 0.1 User Tutorial".
  4. ^ Varma, Atul (2008-07-23). "Trusting Functionality".
  5. ^ acoleman (2008-10-24). "Mozilla Ubiquity".
  6. ^ "Ubiquity 0.1.3 Architecture". Retrieved 2009-03-22.
  7. ^ Erlewine, Michael Yoshitaka. "Localizing Ubiquity: an open letter to linguists". Retrieved 2009-03-24.
  8. ^ "Ubiquity 0.2 Design: UI and Security Extensibility". Retrieved 2009-03-22.
  9. ^ "Labs/Ubiquity/Roadmap - MozillaWiki".
  10. ^ "Satyr / Ubiquity / Downloads — Bitbucket". Archived from the original on 2015-05-07. Retrieved 2012-05-28.