Software developed by CDH
The CDH Development and Design Team creates and releases new, open source software as part of their work on sponsored projects. This list includes only software developed since the team’s formation in October 2016. It does not include projects created by project teams who did their own development work (such as bitKlavier, Digital Oulipo, and others).
All software is released under the Apache 2 open-source license. Our primary technical stack includes the Python programming language and Django, a web application framework written in Python.
Sponsored Projects
ppa-django
https://github.com/Princeton-CDH/ppa-django
A new implementation of Princeton Prosody Archive as a Python/Django web application. Intended to provide a reusable solution for creating curated collections of HathiTrust materials, and eventually materials from other sources. Provides a bulk import of HathiTrust materials, collection management, metadata correction, and advanced search capabilities.
Initial public release: version 3.0, December 2018.
Software citation:
Koeser, Rebecca Sutton, Nick Budak, Benjamin W. Hicks, and Gissoo Doroudian. Princeton-CDH/ppa-django: V3.0 Initial Public Release. Zenodo, 2018. https://doi.org/10.5281/zenodo.2400705.
derrida-django
https://github.com/Princeton-CDH/derrida-django
Python/Django web application for Derrida’s Margins. Provides a public interface to search and browse books in Derrida’s library, references in Of Grammatology, and Derrida’s annotations related to those references. Also provides a management interface for bibliographic and biographic data, and an annotation capture interface (implemented with django-annotator-store and djiffy; similar to winthrop-django annotation but customized for project-specific data needs).
Soft launch version 1.1 released June 2018, public launch version 1.2 released October 2018.
Software citation:
Koeser, Rebecca Sutton, Benjamin W. Hicks, Kevin Glover, Nick Budak, Xinyi Li, and Jean Bauer. Princeton-CDH/derrida-django: V1.2 Data Exports and Other Improvements and Fixes. Zenodo, 2018. https://doi.org/10.5281/zenodo.1453447.
mep-django
https://github.com/Princeton-CDH/mep-django
Python/Django web application for The Shakespeare and Company Project. Provides management interface and public search and browse for data about library members, account activity, and items that circulated in Sylvia Beach's private lending library.
Version 1.4 released January 2021; initial public launch version 1.0 released May 2020.
Software citation:
Koeser, Rebecca Sutton, Nick Budak, Gissoo Doroudian, Benjamin W. Hicks, Xinyi Li, and Kevin McElwee. (2021, January 22). Princeton-CDH/mep-django: v1.4 (Version 1.4). Zenodo. http://doi.org/10.5281/zenodo.4458099
winthrop-django
https://github.com/Princeton-CDH/winthrop-django
Python/Django web application for The Winthrop Family on the Page. Provides management interface for bibliographic and biographic data, and an annotation capture interface (implemented with django-annotator-store and djiffy). Preliminary public interface to search and browse books; future release will add search and browse functionality for people and annotations, along with accompanying scholarly materials.
No public releases; version 0.7 released January 2018.
Internal Projects
cdh-web
https://github.com/Princeton-CDH/cdh-web
The CDH website is implemented as a custom Python/Django/Wagtail web application with a custom data model to document sponsored projects, staff, and events. As a project, it also serves as a proving ground for development best practices and potentially reusable components. For example, django-pucas was first developed and used with cdh-web; it includes a multi-author blog component adapted for reuse on other projects.
Version 3.0 released March 2021
Utilities and Libraries
parasolr
https://github.com/Princeton-CDH/parasolr
Lightweight Python library for Solr indexing, searching and schema management with optional Django integration. Currently being developed in tandem with mep-django, with plans for eventually applying to other projects.
Version 0.4 released June 2019.
viapy
https://github.com/Princeton-CDH/viapy
Python module for interacting with Virtual International Authority File (VIAF) data and APIs, with optional Django integration. Developed for use in multiple projects.
Initial version 0.1 released October 2017.
django-pucas
https://github.com/Princeton-CDH/django-pucas
Reusable Python module for use with the Django web framework to streamline provisioning and managing user accounts with Central Authentication Service (CAS) and make use of LDAP for user attributes. Customized for Princeton University, but intended to be reusable for general use. Used in multiple CDH web applications and Research Computing applications, with some interest from other Princeton developers.
Initial version 0.5 released March 2017; version 0.6 released July 2019.
djiffy
https://github.com/Princeton-CDH/djiffy
Python module for use with the Django web framework to index and display IIIF Presentation manifests for digitized content. Developed to integrate Princeton University Library (PUL) digitized content for Derrida’s Margins and The Winthrop Family on the Page.
Initial version 0.1 released June 2017; version 0.5 released June 2018.
django-annotator-store
https://github.com/Princeton-CDH/django-annotator-store
Python/Django application that acts as a generic annotator.js storage back end. Adapted from the Readux project developed by the Emory Center for Digital Scholarship. Developed to support annotation functionality in Derrida’s Margins and The Winthrop Family on the Page. Pull requests on GitHub from students at the University of Bologna and Stanford University demonstrate this application’s potential for a much wider web annotation community.
Version 0.6 released August 2017.