open navigation menu close navigation menu

Library website

This research library website was built using the Wagtail Content Management System, which is itself built on top of Django and written in Python.

I worked as part of a team to implement the site, along with another developer, a designer, a user researcher and a product manager. We used git to manage our source code and we set up unit and integration testing to be sure that new updates wouldn't break existing code.

One of the things I appreciate about working on a Django based system are its management commands: these are command line programs you can run to perform different tasks. I extended the system with several management commands that can run either on demand or as cron jobs. When these commands will be useful to end users it is straightforward enough to extend the admin interface itself with new features.

The library website has thousands of pages of content. I have worked to migrate this content to two new content management systems—in each case I wrote scripts to help with that migration process, moving content from one system to the next.

Library intranet

We built an intranet for the library while we were developing the public site. The intranet includes spaces for departments, project-specific groups and committees, content from human resources including newsletter posts to staff, and information for technical support.

Library catalog

This library catalog software is an open-source project written in PHP using the Zend Framework. The central developers of the project are at Villanova University and there are users of the system all over the world.

A steering committee meets to make design decisions and to guide priorities for future development. Because there are a large number of customizations we could implement, one of the interesting qualities of this project is in deciding when to customize our installation, when to provide a customization to the community as a configurable option, and when to go along with functionality the core project provides. Sharing code with the community takes time, but each local customization represents an ongoing maintenance cost.

Decision-making for the library website and library catalog. The CMS for the the library website was designed for general web users, and the library catalog software was designed for libraries specifically. We have more chances to contribute code to the library catalog software project than we do to the library website CMS project.

Press

Improving Library Websites, January 3, 2017 in American Libraries

Artifacts


Library Website (external link)


Library catalog (external link)