De Rerum Natura · on the nature of things

The text as data

the full translation, CC0, structured for machines

Everything on this page is a stable, fetchable URL: a complete Latin-English parallel corpus of De Rerum Natura (7,412 verse lines, aligned one-to-one on the standard Munro/Bailey numbering), the full translation source with its 465 notes and the translator's commentary on each book, and the 229 entries of Machiavelli's margin. The English is public domain (CC0). No key, no tracking, no limits of ours: it is a directory of static files.

The files

manifest.json
describes everything below: per-book URLs, line counts, note counts, book arguments, licensing. Start here if you are a script.
aligned-01.jsonl … aligned-06.jsonl
the parallel corpus, one book per file: one JSON object per verse line, Latin and English paired.
book-01.txt … book-06.txt
the full translation source, one book per file: the argument, the translator's commentary, the numbered verse, and the endnotes keyed to line numbers.
marginalia.json
Machiavelli's marginalia in Vatican MS Ross. 884: 229 entries, each with canvas and folio, the line of the poem, kind, diplomatic transcription, expanded reading, English, and a link to the page on DigiVatLib.

The aligned corpus

One JSON object per line, in the printed order. From aligned-02.jsonl, the first line of the swerve:

{"book": 2, "line": 216, "key": "216", "latin": "Illud in his quoque te rebus cognoscere avemus,", "en": "This too, in these matters, we long for you to know:"}

The alignment is exact and complete: every English line was translated from, and checked twice against, the Latin line it sits beside. The numbering is the standard one. line is the integer and key the printed number, which carries a letter for the five lettered lines (1.860a, 2.164a, 2.465a, 2.528a, 2.903a); where the printed text transposes lines (1.15 before 1.14, 2.680 after 2.659) both files keep the printed order. The twenty places where the text is lost are marked [lacuna] in the reading edition and are not rows here.

The margin

Every entry of the marginalia table. From marginalia.json:

{"id": 36, "book": 2, "book_line": "2.217-219", "canvas": 36, "folio": "24v",
 "url": "https://digi.vatlib.it/view/MSS_Ross.884/0036", "kind": "note",
 "layer": "reading", "expanded": "quom declinent principia",
 "english": "When the first-beginnings swerve.", ...}

Citing and linking

Cite passages as book.line (e.g. 2.216). Every line of the reading edition has a stable anchor, so any citation can become a link: /read/book-02.html#L216.

Examples

Fetch one book's alignment and pull out one line:

curl -s https://dererumnatura.org/api/aligned-02.jsonl | grep '"key": "216"'

Load the whole poem as a dataset:

import json, urllib.request
rows = []
for n in range(1, 7):
    url = f"https://dererumnatura.org/api/aligned-{n:02d}.jsonl"
    with urllib.request.urlopen(url) as f:
        rows += [json.loads(line) for line in f]
assert len(rows) == 7412

Licensing

Three layers, cleanly separated. The English translation (every en field, and the verse in book-0N.txt) is dedicated to the public domain under CC0 1.0. The Latin is the Perseus Digital Library's text, in the public domain (its TEI markup is CC BY-SA 4.0). The notes, the translator's commentary, and the transcription and English of the margin are © 2026 Chris Duffy, CC BY 4.0; Machiavelli's words are his own and public domain. The illustrations are AI-generated (Google Gemini) and are not reproductions of ancient paintings.

Provenance

The translation was produced by a language model (Claude) from the Latin, line by line, checked twice against it, and edited by a human; the method and the full revision history are public in the repository. The same project's Iliad and Odyssey, with the same machine-readable layer, are at wrath-sing-goddess.com/api/ and theclaudyssey.com/api/.