Library module: BagIt

BagIt ( is a specification for packaging content and metadata about that content into a format that can be shared between applications. This module provides a "BagIt" tab for nodes that allows the packaging of the node and any files attached to the node into a Bag.

google chart api module is easier to use than google charts api

I wanted to add some chart functionality and played with both the Charts and Google Chart API modules. The first module is a basic API for a few different charting systems, and the second one is a more in-depth API for Google only. "Charts" lacked things I wanted like being able to set the width of bars on bar graphs, so I went with the Google-only module.

Library module: Masterkey: Drupal (MkDru)

The purpose of the plugin is to allow libraries and others to embed discovery/metasearch functionally directly into their websites. The plugin uses Index Data's Open Source Pazpar2 platform to search across standards-compliant information sources as well as data indexed using the SOLR/Lucene search engine.

Library site: Homewood Public Library, Homewood, AL

We transitioned from a Dreamweaver site to a Drupal platform in May 2010 and I am still tweaking, tweaking, tweaking!

Library site: Menasha Public Library

We recently made the jump from Drupal 6 to Drupal 7, and with it a new look and several new modules.

Library module: LT4L

The LT4L module uses the Library Thing for Libraries related content feature to provide a connection between the tagging of Drupal content and items in a library's catalog.

LibraryThing for Libraries allows libraries to set up accounts and upload information about their catalog. LibraryThing then enables the tagging of items in a library's catalog. When a library patron views an item in the online catalog, LibraryThing for Libraries can present an iframe with related content via tags. This module uses a LibraryThing for Libraries script to gather a list of items in a library catalog related to a given Drupal node, for display in a block on a single node page.

This module is intended for use on a single node page. The module gathers terms used for the node and then queries LibraryThing for Libraries. The query includes the library's LibraryThing for Libraries id, which is entered in this modules settings page. The module first attempts to retrieve the desired number of items which are tagged with all of the tags in use by this node. If enough results are not achieved, the list is completed with a random assortment of items tagged with only one of the node's terms.

This module was developed by Winterson Design for the Westport Public Library in CT.

DrupalCamp San Diego + ALA Midwinter

SandCamp is being held January 8-9, 2011 and overlaps with ALA Midwinter. It was suggested to us ( that we reach out to Librarians heading to ALA and spread the word that SandCamp might be a cheap and fun way to take a break from ALA and "get their Drupal on." We're also hoping to schedule a couple of sessions on Libraries. We're also hoping to schedule a couple of sessions on Libraries using Drupal. If you're interested, please leave a comment and let us know what you'd like to hear about!

Library site: Western Washington University Libraries

Our library website in Drupal. Particularly happy with the new books list, which utilizes the millennium module. The millennium module rocks!

Library module: Fedora REST API

fedora_rest is a module for building custom interfaces to Fedora Commons repositories. The Fedora REST API module provides a programming interface to invoke Fedora Commons REST methods. By itself, the module can be used to create a simple presentation layer for a collection of objects in the repository, without any module development or PHP coding. But its real power is as a rapid application development tool to code custom modules for creating, managing and publishing collections of complex digital objects.

The module provides a programming interface to invoke Fedora Commons REST methods, including a PHP class that encapsulates all the REST API methods so they can be easily invoked from other Drupal modules and PHP applications. It also defines a type of node (fedora_object) that represents a digital object in the repository. This content-type can be extended by defining a new content-type in a custom module and invoking the fedora_rest module's hook implementations to add the Fedora object attributes to the node. A template .module file is included to simplify the process of creating modules that extend the fedora_object content-type.

This module is based on work I did for the Digital Humanities Observatory which is described here: The DHO and I are eager to work with other organizations and repositories to use and enhance this module for other use cases.

Library site: Movie Lists mini site

We get a lot of requests for movies by categories not easily gathered by the catalog, like movies based on graphic novels, or the "Scary Children" list that features "The Exorcist" and "The Ring," for instance. One of our librarians built a database in MS Access of these lists. I suggested we take that database and give it the Drupal treatment complete with a custom (zen) theme.

I wrote a custom script to import her Access database into a custom node module for the movie entries. We use cover art from Book Letters, so rather than download the images, the module uses image URLs to display covers, and links them to the catalog entry for the particular movie title for easy placing of holds, etc.

For easy addition of covers, a custom screen scrape incorporates the book cover search into the website and some javascript enables staff to click on a cover to add the URL to the node form (no copy/paste) as a block.

At the top of each lists, there is a download button where, via Views Export, the list is exported as a text file so either we can print off a copy to give to patrons, or obviously, they can have the list at home.

For each node, we have added links to related entries on Rotten Tomatoes and, and summary information from the catalog.

Beyond the custom theme and module, the site is basically nothing more than taxonomy and Views. It's a simple, small mini-site, run in a multisite setup. We have talked at using this as and basis for an online community, using Fivestar for ratings, and enabling comments for patron reviews/discussions. I know many public libraries have staff who keep various lists designed to meet local needs. This simple site shows that lost lists can be gathered and sharedvia an expedient, straightforward interface.

Matt Weaver
Web Librarian
Westlake Porter Public Library

Syndicate content