EULfedora is a Python module that provides utilities, API wrappers, and classes for interacting with the Fedora-Commons Repository (versions 3.4.x and 3.5) in a pythonic, object-oriented way, with optional Django integration.
eulfedora.api provides complete access to the Fedora API, primarily making use of Fedora's REST API. This low-level interface is wrapped by eulfedora.server.Repository and eulfedora.models.DigitalObject, which provide a more abstract, object-oriented, and Pythonic way of interacting with a Fedora Repository or with individual objects and datastreams.
eulfedora.indexdata provides a webservice that returns data for fedora objects in JSON form, which can be used in conjunction with a service for updating an index, such as eulindexer.
When used with Django, eulfedora can pull the Repository connection configuration from Django settings, and provides a custom management command for loading simple content models and fixture objects to the configured repository.
eulfedora currently depends on eulxml, rdflib, python-dateutil, pycrypto, soaplib.
eulfedora can be used without Django, but additional functionality is available when used with Django.
eulfedora was created by the Digital Programs and Systems Software Team of Emory University Libraries.
libsysdev-l@listserv.cc.emory.edu
eulfedora is distributed under the Apache 2.0 License.
For instructions on how to see and interact with the full development history of eulfedora, see eulcore-history.
When running unit tests you must set the the PYTHONPATH variable:
$ PYTHONPATH = .:test