Skip to content

stilist/drjohndee.net

Repository files navigation

The life and times of Dr John Dee

This is the data and source code for drjohndee.net, which I’ve described as ‘Dr Dee’s life, presented with context, from source materials’. You can explore Dee’s writings and experiences, shown in the context of world events.

The project is inspired by Phil Gyford’s The Diary of Samuel Pepys. The source code for that project is available, though I don’t see an open-source license; the data doesn’t appear to be available outside of the site itself.

This project is built to ensure the material is accessible to as many people as possible, and can continue to be used in the future: the data and source code in this repository are provided under strong open licenses (see LICENSE.md); source material is stored as plain Unicode text; the website makes heavy use of structured data, which is built on schema.org definitions; and I’ve used accessibility-testing tools to ensure the website is usable for a wide range of people.

How this system works

The project is built on Jekyll, though it could use any static site generator. This repository has a few parts: data, code to process the data, and code to present the data.

The data is currently split between the _data directory (Jekyll’s built-in system for managing data-sets) and the _source_material directory. _source_material has the ‘raw’ data, with a handful of annotations using Jekyll’s ‘front matter’ metadata system. The content is transcribed from source books and manuscripts, using the same line structure as the source material. (This makes it easier to locate a line from the source material in the transcription, and vice versa.) The _data directory has Yaml files that contain annotations and metadata for the source material. (For example, information about people.)

The _plugins directory has generators that create pages from data — a page for each year and date that have relevant source material, and for each file in _data/people and _data/sources.

The _includes and _layouts directories have the HTML files used to generate pages for the site. The _plugins directory has Liquid filters that are used by the files in _includes and _layouts.

Last, the assets directory has the CSS and font files that determine the site’s appearance.

How to run this project on your own machine

You’ll need to have a supported version of Ruby installed.

# install Jekyll and dependencies
bundle install

# run Jekyll server
bundle exec jekyll serve

The Jekyll documentation has more information.

How to contribute

Improvements and contributions of any kind and any size are welcome: it could be writing new code, improving the website’s design or source code, correcting transcriptions, or something else! The CONTRIBUTING.md file has more information about how to contribute.

Conventions for transcribing manuscripts

This project uses a mix of the diplomatic and semi-diplomatic transcription systems.

Specifically:

  • follow original formatting as closely as Unicode will allow
    • for example, ‘your’ written as ‘y.ͬ’, or scribal suspensions like ‘cũ’ for ‘cum’
    • retain capitalization, spelling, line breaks, punctuation, hyphenation: for example, preserve inconsistent use of ‘u’ and ‘v’, ‘i’, ‘y’, and ‘j’
    • retain spacing; make a best guess at whether to use a narrow space (Unicode U+202F) no-break space (Unicode U+00A0)
  • use {x} to transcribe uncertain letters (‘x’ in this example), and {.} to transcribe lost letters or letters too obscure to be inferred (for example, if the word ‘agayne’ were written too sloppy to read it might be transcribed as something like ‘a{ga..}e’)
  • use [x] to note letters that are obviously missing (for example, ‘[L]undrumguffa’, when all other mentions of the name include an ‘L’)
  • use ┌x┐ to note text that was clearly added at a later time
  • retain deleted text, bracketed with and (for example, ‘‹has› had’ means ‘has’ was written first, then crossed out)