Support Us

You are browsing the archive for Annotator.

AnnotateIt and Annotator: a new mode of communication on the web

Nick Stenning - April 3, 2012 in Annotator, Featured, OKI Projects, Our Work

For some time, we at the Open Knowledge Foundation have been working on a project to allow you to annotate the web. All of it. We’re now happy to announce two major releases: of Annotator, the code that makes web annotation possible, and AnnotateIt, a web service providing storage for your annotations.

What are you on about?

If you haven’t heard us talking about Annotator or AnnotateIt before, you’ll be wondering what this is all about. Annotator is a piece of code that runs in your web browser and helps you add commentary to the web. There’s an Annotator “bookmarklet” — like the one used by Pinterest and many other web applications — which allows you to create annotations on any web page simply by selecting content with your mouse. This will work no matter where on the web you are; whether you’re reading a Shakespeare play, a news article, or a Wikipedia page. These annotations usually contain simple text content, but in principle they can contain any kind of data you like. There are already a number of plugins that store extra data on the annotations such as tags or details of who created them, but you could include links to other web pages, videos, or audio content. All the annotations you make can be saved to a central service for long-term storage. You can find a demo of the Annotator software on the Annotator website.

In addition to the plugins we administer, others have added support for touch devices, storage in your browser, and heatmaps allowing you to see where a document is most heavily annotated.

That’s all well and good, but how can you actually use this thing? That’s what AnnotateIt is for. AnnotateIt provides “annotation as a service,” and serves as the long-term storage we mentioned in the previous paragraphs. In the next 30 seconds, you can get up and running with Annotator in your browser by following a few simple steps:

  1. Sign up to AnnotateIt.

  2. Go to “My Account” and drag the bookmarklet to your browser’s bookmarks bar.

  3. That’s it, you’re done: you can use the bookmarklet anywhere on the web.

All the annotations you make anywhere on the web will be saved to AnnotateIt and you’ll be able to review and organise them on You can make public annotations for all the world to see, or you can keep your annotations private: it’s up to you.

AnnotateIt is also designed for people who run websites with content that could do with annotating. Open Shakespeare is one of our projects that uses AnnotateIt as a storage server, while presenting annotation as a fully integrated service. If you develop such a website, you might be interested to know that integration with AnnotateIt takes just a few lines of code: see our website for details.

So what’s new?

  • Annotations now have an online presence, and when you create annotations with the AnnotateIt bookmarklet they display a link you can share with friends on Twitter, Facebook, etc. You can even embed Annotations directly in a web page, like this:

  • We’ve made several tweaks to Annotator’s user interface to improve its usability, particularly when annotation is enabled for only a small part of a larger page.

  • Developers can now make their site annotatable with just one line of Javascript.

  • We’ve been involved with the Open Annotation Collaboration‘s work to standardise the world of online annotation, and in the future we hope we’ll be making Annotator into the first real-world implementation of the OAC specification.

  • are working with us on their project to bring citizen-powered peer review to the web.

  • FinalsClub are porting some 9000 high-quality annotations of Shakespeare plays over to Annotator’s format so they can be displayed on Open Shakespeare.

Lastly, we’ve been working on improving our internal processes and infrastructure so that we can continue to iterate faster in the coming months.

What’s left to do?

There’s so much we have planned for the future! To pick just two particularly exciting things out of the laundry-list of plans we have for Annotator (see more in the minutes of our recent community call):

  1. The ability to Annotate not only web pages, but multimedia content within those pages like images and video. We hope we’ll be working with the authors of yuma.min.js to make that happen.

  2. The Changing Content Problem. At the moment, Annotator doesn’t behave particularly cleverly when the content it’s annotating changes. In the most general case, this is a really tough problem to solve when you don’t control the content, but lots of smart people (see the Memento project) are working on it, and we’re going to see what we can do to transparently migrate annotations to newer versions of a web page where possible, and provide access to old/outdated annotations via a Memento server or something like it.

If you want to get involved, please subscribe to the mailing list and join us in the #annotator IRC channel on Freenode. If you’re a developer: get stuck in and send a pull request on GitHub. Whatever you do, make sure you sign up to AnnotateIt and send us feedback on what you see!

Annotators of the World Unite!

Sam Leon - February 2, 2012 in Annotator

The following post is by Andrew Magliozzi founder of and one of the developers working on the Annotator javascript library and the AnnotateIt service.

Scholars, bring us your ancient, worn, and insightful annotations.  We have the tools to help you collect and connect your knowledge of Plato, Dante, Shakespeare, Eliot and others.  Together we can create a comprehensive repository of commentary on the best that has been thought and said.

Embracing a common mission of openness, our source code will always be libre, our standards compliant, and our knowledge free.  Organizations from Cambridge, US & UKCalifornia, and Vienna are working together to combine our technologies and innovation to provide you with the ability to annotate and share any text, image, PDF, map, or video online.

We are also on the verge of rereleasing 273 public domain texts with 9000+ annotations from top young scholars at Harvard, Columbia, UChicago and other top institutions.  In addition to the web, we also aspire to make our best content available on mobile reading devices, so curious minds everywhere can share a common discourse anytime, anywhere.  Because we believe you should always control access to your knowledge, we will ensure your data has simple permissions and measures for portability.

If you are a developer, designer, or scholar, we could use your help to create, curate, and map our global knowledge graph.  Together we can transform 21st century scholarship within and without the ivory tower.  If you want to get involved, please join the conversation about our software and our scholarship.

Screenshot of

Prizewinning bid in ‘Inventare il Futuro’ Competition

James Harriman-Smith - November 5, 2011 in Annotator, Bibliographic, Featured Project, Free Culture, Ideas and musings, News, OKI Projects, Open Shakespeare, Public Domain, Public Domain Works, Texts, WG Humanities, WG Open Bibliographic Data

By James Harriman-Smith and Primavera De Filippi

On the 11th July, the Open Literature (now Open Humanities) mailing list got an email about a competition being run by the University of Bologna called ‘Inventare il Futuro’ or ‘Inventing the Future’. On the 28th October, Hvaing submitted an application on behalf of the OKF, we got an email saying that our idea had won us €3 500 of funding. Here’s how.

The Idea: Open Reading

The competition was looking for “innovative ideas involving new technologies which could contribute to improving the quality of civil and social life, helping to overcome problems linked to people’s lives.” Our proposal, entered into the ‘Cultural and Artistic Heritage’ category, proposed joining the OKF’s Public Domain Calculators and Annotator together, creating a site that allowed users more interaction with public domain texts, and those texts a greater status online. To quote from our finished application:

Combined, the annotator and the public domain calculators will power a website on which users will be able to find any public domain literary text in their jurisdiction, and either download it in a variety of formats or read it in the environment of the website. If they chose the latter option, readers will have the opportunity of searching, annotating and anthologising each text, creating their own personal response to their cultural literary heritage, which they can then share with others, both through the website and as an exportable text document.

As you can see, with thirty thousand Euros for the overall winner, we decided to think very big. The full text, including a roadmap is available online. Many thanks to Jason Kitkat and Thomas Kandler who gave up their time to proofread and suggest improvements.

The Winnings: Funding Improvements to OKF Services

The first step towards Open Reading was always to improve the two services it proposed marrying: the Annotator and the Public Domain Calculators. With this in mind we intend to use our winnings to help achieve the following goals, although more ideas are always welcome:

  • Offer bounties for flow charts regarding the public domain in as yet unexamined jurisdictions.
  • Contribute, perhaps, to the bounties already available for implementing flowcharts into code.
  • Offer mini-rewards for the identification and assessment of new metadata databases.
  • Modify the annotator store back-end to allow collections.
  • Make the importation and exportation of annotations easier.

Please don’t hesitate to get in touch if any of this is of interest. An Open Humanities Skype meeting will be held on 20th November 2011 at 3pm GMT.

The Annotator – Preview

Lucy Chambers - May 12, 2011 in Annotator, News, Releases, Technical

In November 2010, Rufus Pollock announced the Annotator project on the OKFN blog. Since this initial release the project has been developed into a fully fledged product.

The Annotator is a JavaScript widget that can be added to any webpage to allow inline annotation of its contents. Combined with a storage system, such as AnnotateIt, this allows online collaboration on all forms of HTML documentation, literature and articles.

Annotator 1 Annotator 3 Annotator 4


Updated interface

Making use of the latest web technologies, we’ve refined the interface to be more intuitive for the user. Annotations will always try and display inside the window and the comment editor can now be resized and repositioned to suit.

Simple to install

Once the Annotator library code has been included, the Annotator can be added to your website in just one more line of JavaScript:

var content = jQuery(‘#content-to-annotate’).annotator();

Pluggable architecture

The Annotator itself is a just a small piece of code that manages the annotations. It can then be extended with plugins to enhance its functionality.

A broad range of plugins can be created. Examples bundled with the Annotator include tagging, permissions and a store for interfacing with an external database to save annotations.

Add plugins to your webpage with just one more line of code:

content.annotator(‘addPlugin’, ‘Tags’).annotator(‘addPlugin’, ‘Store’);


The Annotator Store plugin can be tailored to talk to any backend but to make things really easy we’ve created AnnotateIt, a simple web service for storing your annotations. This is currently a closed Beta and you can sign up for an account to test it out here.

On the other hand if you’re feeling creative you can build your own store. The Annotator uses a very simple JSON based protocol that can be implemented in any language. The AnnotateIt source code is available on GitHub for guidance.


AnnotateIt also allowed us to build a bookmarklet that allows you to inject the Annotator into any webpage and begin annotating immediately. The next time you visit the webpage simply reload the bookmarklet to have all your annotations restored. This makes it easy to separate editorial control over content from control over commentary.

Find out more

If we’ve piqued your interest please head on over to and sign up for a free account.

We’re very excited to see what can be done with the project and are seeking feedback to continue to improve the product. To get in touch just drop us an email at annotator [at] okfn [dot] org.

If you’re interested in adding the Annotator to your own site or developing a plugin then our GitHub page is the place to go. Here you can download the latest Annotator source code and browse the wiki for details on getting started.

Useful Links

Open-Source Annotation Toolkit for Inline, Online Web Annotation

Rufus Pollock - November 12, 2010 in Annotator, OKI Projects, Open Shakespeare, Releases

This is a post by Rufus Pollock, a long-time Open Knowledge Foundation member and coordinator of the Open Shakespeare project.

We’ve been working on web-annotation — inline, online annotation of web texts — for several years.

Our original motivation was to support annotation of texts in so we can collaboratively build up critical notes but since then I’ve seen this need again and again — in drafting new open data licenses, with scholars working on medieval canon law, when taking my own notes on academic papers. annotation

Open Shakespeare’s Hamlet in annotate mode

What’s surprised me is that there appears to be no good opensource tool out there to do this. There are several commercial offerings (including annotation in google docs), and there have been opensource attempts such as annotea, Stet (for GPLv3), marginalia, and co-ment but none of these really seemed to work — my original implementation in 2006/2007 of annotation for used‘s (excellent) marginalia library but I ultimately ran into performance and integration problems).

Thus, a year and a half ago, in collaboration with Nick Stenning, we started developing an annotator project to create a new, simple javascript (+ backend) library for web-annotation. Our main goals were and are:

  • Annotation of arbitrary text ranges
  • Annotate any web (html) document
  • Easy to use — 2 lines of javascript to insert this in your web page/app etc
  • Well-factored and library-structured — easy to integrate and easy to extend

Nick’s (who’s a great javascript (and css) developer), has been responsible for writing all of the frontend (i.e. the annotation stuff you actually see!) while I’ve developed the backend annotation store.

In the way of spare-time projects, development has been rather slower than we would have liked but we now have a functioning alpha which has now been running successfully on for the last 6 months.

Furthermore, the system is completely app-agnostic and is incredibly easy to use — adding annotation to your web page only requires one line of jquery javascript (assuming a backend is set up):


Interested? Below are links to project information including the source code and docs and mailing list. We’re especially eager to get feedback from those looking to integrate into other apps or who would like to help develop the library features.

Project Info

Source code


  • Open JSON-REST annotation protocol – simple JSON and REST-based
  • Javascript (jquery-based) library for inserting inline annotations in a given document supporting this protocol
  • One or more backends implementing this protocol (emphasis on backends that are easy to deploy using standard tools e.g. using sql database or couchdb)
  • Really simple: just do (jquery-esqe) $(‘myelement’).annotator() to get up and running
  • Fast even on large documents
  • Support of multiple users
  • Pluggable backends
Get Updates