Sometimes as a student you might hear a phrase during a lecture or read it in an assignment and think, ‘I don’t know what that is, but it can’t be as simple as it sounds.’ I remember as an undergrad at North Carolina State University in the 2010s hearing about “digital humanities” and worrying that it would require coding knowledge or website design experience, of which I had neither at the time. The basic definition of digital humanities (or DH) is as simple as it sounds: the intersection of humanities and technology, frequently to find new ways to interact with or examine data. 

Digital humanities projects and methods do not always need to be incredibly complex. It can be something as simple as creating a word cloud to better analyze text.

A blue, white, and yellow word cloud showing terms in larger and smaller text depending on frequency of appearance in  a Buffalo Bill program.
Word cloud created using the transcript from Buffalo Bill’s Wild West and Congress of Rough Riders of the World program, June 27, 1896.

In a more complex DH example, Milner Library’s virtual exhibition, Agency through Otherness: Portraits of Performers in Circus Route Books 1875-1925, showcases performers and delves into the Circus Route Books Collection. This exhibition offers interactive features such as timelines and maps, providing a variety of ways to interact with the collection information.

In an earlier post I explained my Wikidata work with The Life and Legacy of Buffalo Bill collection.

Photograph of Buffalo Bill Cody on horseback on the lot of his wild west show. Three riders wearing sombreros are visible behind him and several multi-story buildings appear in the background. Handwritten text overlays the image.
This photograph showing Buffalo Bill Cody has a note to his sister Julia Goodman written in Cody’s hand.

Trying to find a way to build on this previous experience, it felt like a natural choice to create an interactive map based on data from materials in the collection. Creating a map like this can be as simple or complicated as you’d like, but the first task is choosing a platform to use. 

The four most popular tools I found in my explorations were:

  • StoryMapJS
    This is a popular, free, and easy-to-use tool, but the least customizable. A great example provided by StoryMapJS is the project Game of Thrones: Arya’s Journey. (Author’s Note: This project does contain spoilers for the books and the show.)
  • ArcGIS StoryMaps and StoryMaps.com
    Both of these platforms are owned by Esri. ArcGIS StoryMaps is the professional edition and requires an ArcGIS subscription (ArcGIS is available in Milner’s Digital Scholarship Lab). The other StoryMaps option is a personal use edition, which includes a free tier and a Premium tier that has more customization options. It is important to note that ArcGIS StoryMaps and StoryMaps are treated as different products and are NOT interoperable. Good examples of these platforms include an ArcGIS StoryMaps project developed by Milner Library called Over There, and a free tier StoryMaps project named Great examples: Explorer tour.
  • MapStory
    This is a newer tool that does not have as much information available online. It contains two tiers, free and paid. One of its main selling points is the use of “natural language to map,” which means you can input text, and it claims to use some form of artificial intelligence to generate points on a map. Options like the use of natural language and the number of projects on can create are limited on the free tier. MapStory provides an example named National Parks for Stargazing in US.
  • Odyssey.js
    This tool is the most complex of those that I researched, but it also allows the greatest amount of customization. There is some documentation online, but the project’s GitHub has not been updated in about a decade. The examples featured on the Odyssey.js website unfortunately do not work, but here is a link to live examples in their documentation.

The complexity and obsolescence made me wary of using Odyssey.js. ArcGIS subscriptions are very expensive, and my goal for this was to use publicly available tools, which eliminated ArcGIS StoryMaps. While MapStory could work, after some experimenting with the platform it felt unreliable—the artificial intelligence was inconsistent and frequently added events multiple times or in the wrong order. MapStory’s manual location entry was also buggy.

That left me with Esri’s free StoryMaps tier and StoryMapJS.

Screenshot of a StoryMap showing a watercolor rendering of the united overlaid by pins on the map throughout the Northeast and Midwest  regions. A route book from the Buffalo Bill show with a portrait of Buffalo Bill Cody in profile with his signature goatee and cowboy hat.
Interactive StoryMapJS project that plots each place the Buffalo Bill Wild West show appeared in the 1895-1899 seasons.

The simplicity of using StoryMapJS is enticing, and it allows for functions like embedding external resources, but the StoryMaps user interface (UI) is more modern and allows more ways to add text. StoryMaps also allows internal linking for better navigation and multiple map options. Unfortunately, even with all the special features, there are limitations. The map tour feature is limited to 100 slides, which I found out when I reached my 100th slide for a season with over 130 show locations. Instead of splitting the season route data across multiple map tours, I created the 1900 route map using StoryMapJS. I then embedded this separate map into my Esri Storymaps project.

Screenshot of a zoomed-in map overlaid by a pins marking the location of a stop on the route traveled by Buffalo Bill’s Wild West Show. Images appear on the side of the screen showing the covers of two programs from the show.
Interactive StoryMap project that plots places where the Buffalo Bill Wild West show appeared over the course of several years. The map highlights items from Milner Library’s digital collections and links back to the digitized documents in the digital library platform.

To my surprise, these two platforms complement each other quite nicely. The StoryMapJS basic UI does not distract or overwhelm, while allowing me to include a much larger map. It also means that users can look at this 1900 season route map individually on the exterior site or within the larger StoryMap project that features multiple maps.

These projects were completed by Jason Sharp during a fall 2024 internship in Milner Library’s Special Collections.