==========================================
ocfl-py - An OCFL implementation in Python
==========================================

.. image:: https://travis-ci.org/zimeon/ocfl-py.svg?branch=master
  :target: https://travis-ci.org/zimeon/ocfl-py
.. image:: https://coveralls.io/repos/github/zimeon/ocfl-py/badge.svg?branch=master
  :target: https://coveralls.io/github/zimeon/ocfl-py?branch=master

**WORK IN PROGRESS - NO GUARANTEE, NO MONEY BACK :-)**

Attempts to follow `current draft of OCFL specification
<https://ocfl.io/draft/spec/>`_

See `README_*.md` files for current examples.

Have dropped Python 2, it is time for Python 3.

Installing
----------

This code is Alpha, in active development both to flesh out support for the
OCFL draft specification and to track changes in it. To get the most up to 
date version check out the ``master`` branch from github.

I hope to keep a version not too far out of date on PyPI too, which can
be installed with:

    pip install ocfl-py

There should then be three scripts available:

- ``ocfl-validate.py`` - validate an OCFL object
- ``ocfl-object.py`` - build and manipulate an OCFL object
- ``ocfl-store.py`` - add or access OCFL objects under an OCFL object root

Each script takes ``-h`` for help.

Contributing
------------

See `CONTRIBUTING.md
<https://github.com/zimeon/ocfl-py/blob/master/CONTRIBUTING.md>`_
for guidelines for contributing.

Copyright and License
---------------------

Copyright 2018--2020 Simeon Warner and `contributors
<https://github.com/zimeon/ocfl-py/graphs/contributors>`_.
Provided under the MIT license, see `LICENSE.txt
<https://github.com/zimeon/ocfl-py/blob/master/LICENSE.txt>`_.

