Metadata-Version: 2.1
Name: hyputils
Version: 0.0.10
Summary: Python utilities for the Hypothes.is REST api and websocket interface
Home-page: https://github.com/tgbugs/hyputils
Author: Tom Gillespie
Author-email: tgbugs@gmail.com
License: MIT
Keywords: hypothesis hypothes.is web annotation
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: appdirs
Requires-Dist: certifi
Requires-Dist: psutil
Requires-Dist: requests
Requires-Dist: websockets
Provides-Extra: dev
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: wheel; extra == "dev"
Provides-Extra: memex
Requires-Dist: python-dateutil; extra == "memex"
Requires-Dist: bleach; extra == "memex"
Requires-Dist: jsonschema; extra == "memex"
Requires-Dist: mistune; extra == "memex"
Requires-Dist: psycopg2; implementation_name != "pypy" and extra == "memex"
Requires-Dist: psycopg2cffi; implementation_name == "pypy" and extra == "memex"
Requires-Dist: python-slugify; extra == "memex"
Requires-Dist: sqlalchemy; extra == "memex"
Requires-Dist: webob; extra == "memex"
Provides-Extra: test
Requires-Dist: factory-boy; extra == "test"
Requires-Dist: pytest; extra == "test"
Requires-Dist: bleach; extra == "test"
Requires-Dist: jsonschema; extra == "test"
Requires-Dist: mistune; extra == "test"
Requires-Dist: psycopg2; implementation_name != "pypy" and extra == "test"
Requires-Dist: psycopg2cffi; implementation_name == "pypy" and extra == "test"
Requires-Dist: python-slugify; extra == "test"
Requires-Dist: sqlalchemy; extra == "test"
Requires-Dist: webob; extra == "test"
Provides-Extra: zdesk
Requires-Dist: pyyaml; extra == "zdesk"
Requires-Dist: zdesk; extra == "zdesk"

# hyputils
[![PyPI version](https://badge.fury.io/py/hyputils.svg)](https://pypi.org/project/hyputils/)
[![Build Status](https://travis-ci.org/tgbugs/hyputils.svg?branch=master)](https://travis-ci.org/tgbugs/hyputils)
[![Coverage Status](https://coveralls.io/repos/github/tgbugs/hyputils/badge.svg?branch=master)](https://coveralls.io/github/tgbugs/hyputils?branch=master)

python utilities for working with the hypothes.is api and websocket interface

## Config files
`zendeskinfo.yaml` should contain
```
zdesk_url: https://yoururl.zendesk.com
zdesk_email: your@email.com
zdesk_password: your_token_or_password
zdesk_token: True

```

## Usage
hyputils checks the following enviornment variables
1. `HYP_API_TOKEN` is your api token.
2. `HYP_USERNAME` is your username (not strictly required).
3. `HYP_GROUP` is the 8 char group identifier.

# Fun!
If you never modify your annotations, but instead
only add new replies to modify them you can view a
snapshot of the state of your annotation work and
understanding at time T by simply excluding all
anotations with updated > T!
