Skip to content

Repository files navigation

The Digital Decretals — Web Edition

CI Code: MIT · Text & data © Edward A. Reno III (see LICENSE.md)

A searchable web edition of Bernard of Parma's Glossa Ordinaria to the Decretals of Gregory IX (Liber extra), built from Prof. Edward Reno's complete master text (Books 1–5, rev. 9/23: 9,872 gloss units under 1,970 capitula headings, 185 titles, plus the Rex pacificus preface) and his title-abbreviations spreadsheet.

Deliverables

  1. web/ — the full Next.js site (App Router, TypeScript, static export). This is the flagship: it reproduces all content of the original Google Site and adds tooling on top. A ready-to-deploy build is in web/out/ (serve over HTTP; e.g. npx serve web/out). See web/README.md for dev/build/deploy.
  2. digital-decretals.html — single self-contained file (5 MB), same search engine and complete text, zero infrastructure: double-click and it works offline. Good for emailing around or USB-stick scholarship.

What the site includes

  • Search (/): free-text search of the whole gloss with exact-punctuation matching (the allegation system depends on it), plus ignore-punctuation / match-case / whole-word modes, filters by book → title → chapter, per-book hit counts, highlighted results citing each gloss as X 4.17.13 s.v. Habeat potestatem, and a Browse panel of the full book/title/capitulum/lemma architecture with a reading view (prev/next, deep links like /?loc=4.17.13; legacy #hash links from the single-file edition still work).
  • Register integration: opening any capitulum shows its inscription, its standardized allegation form, and the register's allegation count, with one click to retrieve all of its allegations across the gloss. Validated register-wide: for 1,969 of 1,971 capitula (99.9%) the register count exactly equals the corpus hits of the standardized search string (the two exceptions are in the errata below).
  • Abbreviations explorer (/abbreviations): the entire spreadsheet as a live, filterable tool — capitula register (with allegation counts, linked to search and reading view), 185 Decretals title abbreviations, 896 Roman-law title rows (Codex/Digest/Institutes/Novellae, with "sometimes found" variants), and the 31 extravagantes.
  • Full content migration of the original Google Site, page for page: the Home introduction (NB note, full text, byline) on the landing page; /about (introduction + scope/history + dated project updates); /text (text base, orthography, abbreviations, punctuation, numeration, Word/PDF usage notes, downloads); /allegations (the complete tutorial — Decretum, Liber extra, extravagantes, Codex/authenticae, Digest, Institutes, Novellae, additional considerations, caveats, the full jurist sigla list, mnemonic verses — every example wired to a working "Search →" button); /ancillaria (all five resource links with descriptions); /gratissimi; /contact. The original "Embedded Text" pages (the gloss pasted for in-browser Ctrl-F) are superseded by Search, noted on /text.
  • Downloads (/text): the rev. 9/23 Word, PDF, and spreadsheet files served locally — plus individual book files (Books 1–5, Word, generated byte-exact from the rev. 9/23 master via build/split_books.py; Book 1 includes the Rex pacificus preface, following Reno's own convention) and the single-file offline edition.
  • Citation hypertext: all 18,257 standardized Liber extra allegations in the gloss are precomputed links (build/make_links.py, 1,970/1,971 exact agreement with the register) — click any allegation to jump to the capitulum it cites, in the app or on the static pages.
  • Per-capitulum pages (/x/4.17.13 etc.): 1,970 pre-rendered, SEO-indexable pages, one per glossed capitulum, with register info and hyperlinked glosses; all in the sitemap.
  • Statistics (/statistics): most-alleged capitula, citation counts by source corpus (~40k allegations total), jurist sigla frequencies, and the complete anthology of 55 mnemonic-verse glosses.
  • Search extras: CSV export of any result set; orthographic-tolerance mode (ae/oe ≡ e, v ≡ u) so medieval spellings match the classical orthography. (The single-file offline edition keeps the core search but not the hypertext/chapter pages.)

Production notes

Static export, no server, no tracking; all searching happens client-side. CI (GitHub Actions) runs the 47-check corpus/register suite and a production build on every push. The site ships a sitemap and robots.txt (the canonical URL is taken from Vercel's production-URL env, overridable via NEXT_PUBLIC_SITE_URL), per-page metadata with an OG template, a styled 404 and client error boundary, lang="la" on Latin text for screen readers, and a single-file offline edition downloadable from /text.

Updating the text

cd web
npm run data    # re-parses the master .docx in this folder → public/gloss-data.json
npm run build   # static site → web/out
npm test        # 47 checks against the corpus

build/parse_gloss.py is the shared parser; build/build_app.py "<master>.docx" regenerates the single-file edition. The abbreviations JSON was extracted from the spreadsheet (see build/ history); re-extraction is only needed if the spreadsheet is revised.

Errata for Prof. Reno (rev. 9/23 sources)

Found while validating data integrity (zero text loss confirmed against the Word file):

  • X 3.37.04 appears twice in the Word file: once as Dilectus filius M. (4 glosses: Asserunt, Nulla mentio, Occupationem…) and once as Ad audientiam. Per the register, X 3.37.4 = Ad audientiam; the first block is presumably a misnumbered continuation of X 3.37.02 Dilectus filius M. The site keeps both as transcribed.
  • X 1.11.17 Quaesitum (19 allegations in the register) and X 2.8.4 Exposuit (2) have no gloss sections in the Word file — either genuinely unglossed capitula or omitted in transcription. (Hence 1,970 chapter headings vs the register's 1,971 capitula.)
  • Spreadsheet typo: the register's incipit for X 4.7.6 reads signifiasti; the gloss text and the Word file's chapter heading have Significasti. Corrected to significasti in the site's data (the corpus then matches the register count of 2 exactly).
  • X 1.22.1 (de cleri. peregri., tua nos): register says 3 allegations; the text contains 2.
  • Two empty Heading-4 paragraphs in Book V (after X 5.1.18 and X 5.1.23) — harmless, skipped by the parser.
  • Resolved since the earlier draft: the two stray ff. de reg. iur. citations (X 1.9.14, X 1.37.3) were fixed in rev. 9/23 — the Digest form is now uniformly ff. de regul. iur. (133×).

Source files retained in this folder

The earlier partial masters (Decretals Gloss, online version (without Casus).docx, Book 1 and Book 4 isolates) are kept for reference; the site is built from Decretals Gloss, Books 1-5 Complete, rev. 9.23.docx.

About

The Digital Decretals — searchable web edition of Bernard of Parma's Glossa Ordinaria to the Decretals of Gregory IX (Liber extra). Text by Edward A. Reno III.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages