Annotate with anyone, anywhere.
Python CSS JavaScript Other
Failed to load latest commit information.
.github Minor tweaks to the issue template Mar 23, 2016
bin Put PYTHONPATH and PATH updates back in bin/hypothesis Aug 11, 2016
conf Tweak logging config for temporary debug output Aug 24, 2016
docs Rename h.api to memex Aug 9, 2016
h Changed banner for generic hiring message (#3794) Aug 26, 2016
scripts Add style path to error when build fails Aug 19, 2016
src/memex Add an 'unparse' function for string search queries Aug 18, 2016
tests Merge pull request #3776 from hypothesis/group-slug-blacklist Aug 25, 2016
vendor Upgrade to Alpine Linux 3.4 Aug 10, 2016
.coveragerc Fix code coverage computation/reporting Aug 17, 2016
.editorconfig Set default indent size for Jinja2 templates to two spaces Aug 9, 2016
.eslintrc Add ESLint config for Hypothesis service Jul 29, 2016
.gitattributes Do not show vendored PDF.js in language stats Oct 6, 2015
.gitignore Ignore new-format coverage files Aug 17, 2016
.hound.yml Remove JSHint configuration from Hound Jul 29, 2016
.mailmap Add .mailmap file to fix up authors in git history May 11, 2016
.prospector.yaml Disable a contradictory pep257 rule Jun 15, 2016
.travis.yml Only install tox, not all of requirements.txt Aug 17, 2016
AUTHORS Add myself to AUTHORS Oct 8, 2014
CHANGES Release version 0.38.0 Aug 8, 2016
CODE_OF_CONDUCT Add Code of Conduct for contributors to repo May 17, 2016
CONTRIBUTING.rst Fix some broken links in the docs May 25, 2016
Dockerfile Set PYTHONPATH in the container environment Aug 12, 2016
Jenkinsfile Run functional tests on Jenkins Aug 23, 2016
LICENSE Remove the old threading implementation (#3287) May 23, 2016 Rearrange packaging to install memex Aug 9, 2016
Makefile Don't run `npm` when parsing the Makefile Aug 10, 2016
NOTICE Switch out jschannel for frame-rpc Jul 31, 2015
README.rst Remove Landscape badge Jun 29, 2016
gulpfile.js Use a pre-built styling bundle for the Account Settings and Login pages Aug 22, 2016 Set gunicorn worker timeout based on env setting Mar 30, 2016
package.json Scroll expanded search results into view Aug 23, 2016 Add flake8 to (#3699) Aug 16, 2016 Use `` for managing passwords Aug 19, 2016
requirements.txt Use a patched zope.sqlalchemy Aug 25, 2016
setup.cfg Add isort config to setup.cfg Aug 18, 2016 Add bleach dependency for sanitizing HTML output Aug 11, 2016
tox.ini Fix tox 'functional' environment Aug 23, 2016



Build Status Code Coverage IRC channel License badge Python version badge


Hypothesis is a tool for annotating the web.

  • A service for storing community annotations
  • An account system for user registration
  • Authorization for client applications
  • A browser-based annotator client featuring:
    • Chrome and Firefox browser extensions
    • A bookmarklet
    • A publisher embed code


See the Contributor's guide for instructions on setting up a development environment and contributing to h.


Join us in on freenode for discussion.

If you'd like to contribute to the project, you should also subscribe to the development mailing list and read our Contributor's guide. Then consider getting started on one of the issues that are ready for work. Issues tagged with the label 'New Contributor Friendly' are ideal for those just getting started.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.


Hypothesis is released under the 2-Clause BSD License, sometimes referred to as the "Simplified BSD License" or the "FreeBSD License". Some third-party components are included. They are subject to their own licenses. All of the license information can be found in the included LICENSE file.