Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


NYPLBase (or familiarly, "Base") provides a "base" for all NYPL web properties. Color palette, typeface, default styles, and a bit of structure is all built into this code package. (For those familiar with Twitter Bootstrap, it's like the Library's own Bootstrap but with fewer options.)

The idea is that anyone who's building a web project for the Library, whether one of our internal dev teams, or an external consultant group, can download and use this code as the style base, and not have to worry about getting our brand right--it's already in there. Even if you're not using the code, you can still look at the demo page as a style guide.

As of May 2018, only three applications are using NYPLBase: Locations App (previous Location-prototype), Research Collections, and Staff Profiles. Some of the older Drupal pages also use NYPLBase. Subsequent applications are using NYPL Design Toolkit, with the idea that NYPL Design Toolkit will supersede NYPLBase as the default.


To update the styles for the apps that use NYPLBase, simply make a feature branch and make the changes. Then you need to use SASS to compile the changes to min files.

Please run sass css/style.scss:css/nyplbase.min.css --style compressed. It should generate the min CSS and min CSS map under the name nyplbase.

Please go to the particular project's documentation for more details about testing the styles.

Locations App -

NYPL Deployment Process

The process requires access to NYPL's UX-Static repo and Jenkins accounts.

After the changes are approved, we need to update the changes in the UX-Static repo.

In UX-Static, find the folder named nyplbase. Under nyplbase, you will see the folders of different versions. Create a new folder with the new version. In each folder, there are three folders that contain images, fonts, and CSS stylesheets. Copy the contents from the folder of previous version to the new folder that was just created. And in the CSS folder, paste the CSS min files we compiled from NYPLBase. Push the changes. If you have updates for fonts and images, copy them to the new folders respectively as well.

After pushing the changes, we need to deploy UX-Static with Jenkins. You can find the deployment jobs here

There are two deployment jobs. One is for staging and one is for master. They both integrate with the branches of UX-Static repo respectively. Running the job on staging deployment will deploy the staging branch, for example.