Skip to content

moshejs/digital-decretals

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

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages