Annotation tools for the web. Select text, images, or (nearly) anything else, and add your notes.
Clone or download
Pull request Compare This branch is 270 commits behind openannotation:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.tx
contrib
css
doc
example/openshakespeare
img
locale
src
test
tools
.ackrc
.gitignore
.jscsrc
.jshintignore
.jshintrc
.travis.yml
AUTHORS
HACKING.rst
LICENSE
LICENSE-GPL
LICENSE-MIT
Makefile
README.rst
demo.html
dev.html
dev.xhtml
karma.conf.js
main.js
manifest.json
markup.html
package.json

README.rst

Annotator

Build Status Version on NPM

Build Matrix

┌──────────────────────────────────────────────────────┐
│ WARNING! Unstable code in this branch!               │
├──────────────────────────────────────────────────────┤
│ Please be aware that the current stable release of   │
│ Annotator is v1.2.9 and can be found on the releases │
│ page (see below) or the v1.2.x branch.               │
│                                                      │
│ The code in the master branch is what will become    │
│ v2.0 in due course, but is likely to have a highly   │
│ unstable API. You are advised NOT to build on the    │
│ contents of the master branch at this stage unless   │
│ you are happy dealing with APIs breaking frequently! │
└──────────────────────────────────────────────────────┘

Annotator is a JavaScript library for building annotation systems on the web. It provides a set of tools to annotate text (and other content) in webpages, and to save those annotations to a remote storage system. For a simple demonstration, visit the Annotator home page or download a tagged release of Annotator from the releases page and open demo.html.

Annotator aims to provide a sensible default configuration which allows for annotations of text in the browser, but it can also be extended in order to provide:

  • persistence: storage components help you save your annotations to a remote server. One notable example is the HTTPStorage component which ships with Annotator and talks to the annotator-store API.
  • rich metadata: the |DocumentPlugin|_ sniffs the page on which annotations are being made for document metadata (such as that provided by Dublin Core tags or the Facebook Open Graph) that allows you to enrich the presentation of these annotations.
  • authentication and authorization: the Auth component allows you to restrict the creation of annotations to logged in users, while the Permissions component allow you fine-grained control over who has permission to create and update annotations.

For a list of plugins that ship with Annotator, see the plugin pages of the Annotator documentation. For a list of 3rd party plugins, or to add your plugin, see the list of 3rd party plugins on the wiki.

Usage

See Getting started with Annotator.

Writing a plugin

See Plugin development.

Development

See HACKING.rst.

Reporting a bug

Please report bugs using the GitHub issue tracker. Please be sure to use the search facility to see if anyone else has reported the same bug -- don't submit duplicates.

Please endeavour to follow good practice for reporting bugs when you submit an issue.

Lastly, if you need support or have a question about Annotator, please do not use the issue tracker. Instead, you are encouraged to email the mailing list.

Community

The Annotator project has a mailing list, annotator-dev, which you're encouraged to use for any questions and discussions. It is archived for easy browsing and search at gmane.comp.web.annotator. We can also be found in the #annotator channel on Freenode.