brat rapid annotation tool (brat) - for all your textual annotation needs
Python JavaScript HTML CSS Shell
Clone or download
Latest commit 0c430b2 Nov 30, 2017
Failed to load latest commit information.
client Display hierarchical relations Mar 23, 2017
configurations Merge branch 'feature-rtl' Jun 30, 2016
example-data Sentence splitting pre-processing broken, remove hard newlines Nov 6, 2012
external Compatibility issue with `readlink` fixed Dec 21, 2012
res This should settle it. Sep 10, 2012
server Merge branch 'feature-rtl' Jun 30, 2016
static Display hierarchical relations Mar 23, 2017
tools Add --comments argument Nov 29, 2017
.gitignore Ignore default data and work directories Oct 11, 2012
.htaccess typo fix Aug 2, 2012 Fix a few typos Oct 21, 2015 Adding Jörn Kottmann as a contributor Aug 21, 2013 Fixes #1122 (MIT-licenced sprintf library) Nov 4, 2014 Fix a few typos Oct 21, 2015
ajax.cgi Corrected spelling. Mar 7, 2012
ajax.fcgi Protecting sys.path with a thread lock for #612. Jan 6, 2012 Separate script for finding apache user. Nov 6, 2012 Don't match the script itself Nov 6, 2012 Declare UTF-8 coding in (#1160) Apr 1, 2016
diff.xhtml Closes #1088 (diff argument on URL, better error) Nov 11, 2014
favicon.ico Added favicon.ico Jan 28, 2011
index.html Added DirectoryIndex. Fixes #103 Apr 20, 2011
index.xhtml jQuery UI CSS linked correctly Jul 10, 2015 added missing word to user prompt in Feb 2, 2015
lighttpd.conf Spelling correction. Sep 13, 2011
lighttpd_fcgi.conf Multiple processes for LigHTTPD. Sep 13, 2011
offline.xhtml Closes #1124, #1109 (jQuery{,UI,SVG} version up) Nov 7, 2014 Standalone server address un-hardcoded, fixes #1072 Feb 5, 2014 fix cgi parameter handling in testserver Sep 19, 2012
tutorial.cgi Hashes go negative, use the absolute value Nov 12, 2012

brat rapid annotation tool (brat)


In an attempt to keep all user-facing documentation in one place, please visit the brat homepage which contains extensive documentation and examples of how to use and configure brat. We apologise for only providing minimal documentation along with the installation package but the risk of having out-dated documentation delivered to our end-users is unacceptable.

If you find bugs in your brat installation or errors in the documentation, please file an issue at our issue tracker and we will strive to address it promptly.

About brat

brat (brat rapid annotation tool) is based on the stav visualiser which was originally made in order to visualise BioNLP'11 Shared Task data. brat aims to provide an intuitive and fast way to create text-bound and relational annotations. Recently, brat has been widely adopted in the community. It has been used to create well-over 50,000 annotations by the Genia group and several other international research groups for a number of annotation projects.

brat aims to overcome short-comings of previous annotation tools such as:

  • De-centralisation of configurations and data, causing synchronisation issues
  • Annotations and related text not being visually adjacent
  • Complexity of set-up for annotators
  • Etc.

brat does this by:

  • Data and configurations on a central web server (as Mark Twain said: "Put all your eggs in one basket, and then guard that basket!")
  • Present text as it would appear to a reader and maintain annotations close to the text
  • Zero set-up for annotators, leave configurations and server/data maintenance to other staff


brat itself is available under the permissive MIT License but incorporates software using a variety of open-source licenses, for details please see see


If you do make use of brat or components from brat for annotation purposes, please cite the following publication:

    author      = {Stenetorp, Pontus and Pyysalo, Sampo and Topi\'{c}, Goran
            and Ohta, Tomoko and Ananiadou, Sophia and Tsujii, Jun'ichi},
    title       = {{brat}: a Web-based Tool
            for {NLP}-Assisted Text Annotation},
    booktitle   = {Proceedings of the Demonstrations Session
            at {EACL} 2012},
    month       = {April},
    year        = {2012},
    address     = {Avignon, France},
    publisher   = {Association for Computational Linguistics},

If you make use of brat or its components solely for visualisation purposes, please cite the following publication:

  author    = {Stenetorp, Pontus and Topi\'{c}, Goran and Pyysalo, Sampo
      and Ohta, Tomoko and Kim, Jin-Dong and Tsujii, Jun'ichi},
  title     = {BioNLP Shared Task 2011: Supporting Resources},
  booktitle = {Proceedings of BioNLP Shared Task 2011 Workshop},
  month     = {June},
  year      = {2011},
  address   = {Portland, Oregon, USA},
  publisher = {Association for Computational Linguistics},
  pages     = {112--120},
  url       = {}

Lastly, if you have enough space we would be very happy if you also link to the brat homepage:

...the brat rapid annotation tool\footnote{


As with any software brat is under continuous development. If you have requests for features please file an issue describing your request. Also, if you want to see work towards a specific feature feel free to contribute by working towards it. The standard procedure is to fork the repository, add a feature, fix a bug, then file a pull request that your changes are to be merged into the main repository and included in the next release. If you seek guidance or pointers please notify the brat developers and we will be more than happy to help.

If you send a pull request you agree that the code will be distributed under the same license as brat (MIT). Additionally, all non-anonymous contributors are recognised in the file.


For help and feedback please contact the authors below, preferably with all on them on CC since their responsibilities and availability may vary:

  • Goran Topić <goran_topic nii ac jp>
  • Sampo Pyysalo <sampo.pyysalo gmail com>
  • Pontus Stenetorp <pontus stenetorp se>