Building Order

Building Order

This application uses Google Sheets as a lightweight CMS, allowing staff from different departments to contribute content directly to a series of dynamic web pages.

  1. Overview
  2. Project type
  3. Roles & responsibilities
    1. Primary role
    2. Responsibilities
  4. Technologies used
  5. Deployment method
  6. Related documentation & case studies

Overview

Building Order: Campus Buildings Distributed Workflow App was built to enable a collaborative workflow among the faculty, staff, and students of three departments in the Weinberg Memorial Library at the University of Scranton. For almost twenty years, the various iterations of the library’s website had contained a section with information about each building on the University’s campus. But the pages had to be updated manually by a developer in the Systems department—a personally typically far-removed from the department (Archives and Special Collections) that receives updated information about the buildings, through a convoluted and decidedly non-dynamic process.

As our digital collections grew throughout the years, I started to wonder, wouldn’t it be great to come up with a way to integrate those digitized articles and photos as supplementary information, to be able to add building data quickly and easily as we discover it, to make an interactive map of our campus, past and present—and to allow anyone in the library to help out?

Right around the same time, my colleague Kristen described a pilot program that she had in mind for a huge collection scrapbooks containing newspaper clippings about the University’s history. These scrapbooks are a goldmine of University history information, but the 97 large-format scrapbooks contain over 16,000 separate articles.

The project involved so many steps and so much content that Kristen decided to go outside the Digital Services and Systems departments and encourage all library departments to help out. This was an inspiration for me in two ways: not only did I like the vision of a collaborative project among many library staff members, but on a more practical note it occurred to me that the people scanning and describing these newspaper articles from the scrapbooks would be coming across all sorts of informational tidbits about our campus buildings.

Wouldn’t it be great if we could capture that information at the moment they discover it—and even better, if they could update the web pages themselves, without needing any special training or access permissions?

I came across a JavaScript library that makes it very easy to use Google Spreadsheets as a lightweight CMS, and I ended up piecing together a small app that allows anyone working on the project to update the spreadsheet as soon as they discover new information, and to publish their change immediately (or nearly so) on the live website. Since we began using the app, we’ve had hundreds of updates to the pages, including live links to photos and articles in our digital collections. I was also easily able to extend the app by mapping the buildings’ locations.

For complete details on the motivation behind building the app and a case study on application design decisions and implementation, see the following documentation: Building Order: Using Free Tools to Build a Simple App and Streamline Workflows and presentation slides: Building Order: Using Free Tools & Templates to Streamline Content Management Workflow.


Project type

Application


Roles & responsibilities

Primary role

Application Developer

Responsibilities

  • Application development
  • Website development

Technologies used

  • Google Spreadsheets for distributed data entry.
  • Tabletop.js to transform spreadsheet data into JSON.
  • HTML/PHP templates using Handlebars templating language.
  • Flatware.js as a buffer/caching solution to pull data from an S3 bucket instead of directly from the spreadsheet.
  • Cron job to pull down latest data from S3 as well as generated pages to serve as a cache and backup.

Deployment method

  • Content creation in Google Spreadsheet.
  • One click in Flatware to update the S3 bucket.
  • Pages created dynamically on CONTENTdm server using template that pulls in data from S3 bucket.


© 2024 Jennifer Galas. All rights reserved.