VIAF via Python
Python module for interacting with VIAF (the Virtual International Authority File) data and APIs.
viapy provides optional Django integration; this currently includes a django-autocomplete-light lookup view and a VIAF url widget.
Use pip to install from GitHub. Use a branch or tag name, e.g.
@develop
or @1.0
if you want to install a specific tagged release or branch:
pip install git+https://github.com/Princeton-CDH/viapy.git@develop#egg=viapy
Using viapy with Django requires additional configuration. Add viapy to installed applications along with the needed django-autocomplete-light modules:
INSTALLED_APPS = ( ... 'dal', 'dal_select2', 'viapy', ... )
Include the viapy urls at the desired base url with the namespace:
urlpatterns = [ ... path(r'viaf/', include('viapy.urls', namespace='viaf')), ... ]
This git repository uses git flow branching conventions.
Initial setup and installation:
Recommended: create and activate a python 3.11 virtualenv:
python3 -m venv viapy source viapy/bin/activate
pip install the package with all development and test dependencies:
pip install -e ".[dev]""
Unit tests are set up to be run with py.test
Copy sample test settings and add a SECRET_KEY:
cp ci/testsettings.py testsettings.py
To run the tests, either use the configured setup.py test command:
python setup.py test
Or install test requirements and use py.test directly:
pip install -e '.[test_all]' py.test
Documentation is generated using sphinx. To generate documentation, first install development requirements:
pip install -e ".[dev]"
Then build the documentation using the customized make file in the docs directory:
cd sphinx-docs make html
When building documentation for a production release, use make docs to update the published documentation on GitHub Pages.
viapy is distributed under the Apache 2.0 License.
©2024 Trustees of Princeton University. Permission granted via Princeton Docket #18-3449-1 for distribution online under a standard Open Source license. Ownership rights transferred to Rebecca Koeser provided software is distributed online via open source.