Contacts as first class objects in the browser
Update: The most recent Contacts release is 0.3. Read about it here
Today, we’re announcing the release of an experimental version of our new Contacts addon. With Contacts, we’ve enhanced your browser by making it aware of your online contacts and friend lists. You can then search and browse your contacts in the browser, and a website can ask for permission to access them through an API.
Why is this information important? Address books and buddy lists have become an integral part of how we manage our relationships online. Your email addresses, twitter handle and openID are used in hundreds of ways as you connect, follow and share online.
Every desktop operating system, and hundreds of web-based service providers, has some way of representing “who-you-know”. Managing all of this information can be a lot of work. There are multiple copies of your data, and they are inconsistent and disjointed.
This information is also special, because it represents the boundary between “my data” and “your privacy”. When you disclose your friends’ email addresses on a website (maybe you want to invite them to a cool new site you just joined), you are trusting the website to keep that address private. At most sites today, you do this by sharing an entire contact list from some other website (say, your Yahoo address book), and don’t have much ability to restrict what information gets shared. The disclosure of your friends’ contact information is an important step: we think you should be in control of it.
How it works:
The Contacts prototype consists of these pieces:
- A browser-based Contacts database that stays in sync with your address books (so far, it supports GMail, Twitter and Mac OS Address book)
- A generic importer system for Contacts from desktop or web-based address books (so you can implement missing ones)
- An email autocompletion feature, which demonstrates how the browser can auto-complete email addresses on any website. The autocompletion is performed entirely in the browser, without sharing the your list of contacts with the website.
- A Javascript API that websites can use to access the Contacts database, with explicit user permission and filtering
Try it out!
There is an experimental, pre-alpha version of the addon available for download here.
Please be aware that this experimental code. If you are not comfortable with running software that can crash your browser, or cause you lose work, you may want to wait. Please read the Release Notes first.
This version has support for importing from Gmail, Twitter, and, on MacOS-based machines, the local Address Book. This list of importers is far from final — it simply represents three interesting classes of address book data. We’re going to keep working on the list of supported importers, and we will be documenting an open importer API to let everybody join in (and, of course, if a site uses an open standard like Portable Contacts, everybody’s job is much easier!)
Dig deeper
As with all Mozilla projects, Contacts is developed in the open, and we welcome participation from everyone.
Hack on the project sources.
Discuss on our forums.
Chat with us on IRC (irc.mozilla.org, #labs)
Learn More
- We’re indebted to our friends and colleagues at Mozilla Messaging, who have been working on address book integration in Thunderbird for years, and have the exciting new Raindrop messaging application in experimental development now. We are working on integrating the Raindrop project with the Contacts API!
- The Portable Contacts initiative is an important effort to define a common data definition for contact data. We use the Portable Contacts definition internally for Contacts.
- The W3C Contacts initiative is defining an industry-standard, cross-platform API for access to contact data in the browser. The spec is new and evolving, and now is the time to experiment and provide feedback!
Yvaine wrote on :
Sebastian Halbig wrote on :
Shah Khan wrote on :
Romi wrote on :
rodin wrote on :
Bruno wrote on :
JOHNMOSES wrote on :
Andy Mabbett wrote on :
mozilla_labs wrote on :
Urbano wrote on :
Rin wrote on :
mhanson wrote on :
Cef wrote on :
the-edmeister wrote on :
mbk28 wrote on :
mhanson wrote on :
Kirill Maximov wrote on :
Ganeshram Iyer wrote on :
Andrew Lewis wrote on :
Shrijit wrote on :
beriberikix wrote on :
mhanson wrote on :
Mark wrote on :
Will Peavy wrote on :
mhanson wrote on :
Yva wrote on :
Andreas wrote on :
mhanson wrote on :
keithy397 wrote on :
newbeewan wrote on :
Andy Mabbett wrote on :
Andy Mabbett wrote on :
Andy Mabbett wrote on :
RJ wrote on :
Richard Tibbett wrote on :
Phil wrote on :
Stefano Maffulli wrote on :
Dave wrote on :
mhanson wrote on :
mhanson wrote on :
TurboFool wrote on :
Johannes Ernst wrote on :
bcj wrote on :
Josh Bjornson wrote on :
Glenn Brooks wrote on :
wH1sp wrote on :
ken wrote on :
mhanson wrote on :
jonathan wrote on :
mhanson wrote on :
AM wrote on :
John wrote on :
Amit Banerjee wrote on :
mhanson wrote on :
Chicha wrote on :
mhanson wrote on :