Use the data
Every day of Theodore Roosevelt's life is available as open JSON: where he was, who he was with, what he did, the letters he wrote, and his own words from his diary. Build a timeline, a map, a classroom exercise or a daily post. No key, no sign-up.
Widgets
New: Today in TR's life, a rotating banner, card, wall or inline block for trlibrary.com pages, built like the visitor-quotes widget.
Add one script tag to any page, then drop in a widget. Widgets pick up the page's fonts through the --dbd-display, --dbd-serif and --dbd-sans CSS variables, and accept theme="dark" and cta="off".
<script src="https://daybyday.labs.trlibrary.com/widgets/daybyday.js" defer></script> <trpl-on-this-day count="3"></trpl-on-this-day> <trpl-where-was-tr></trpl-where-was-tr> <trpl-day date="1884-06-25"></trpl-day>
The map, embedded
<iframe src="https://daybyday.labs.trlibrary.com/map.html?embed=1&date=1884-06-25"
width="100%" height="640" style="border:0" title="Where Theodore Roosevelt was"></iframe>
JSON API
Base URL: https://daybyday.labs.trlibrary.com/api/v1/. Every endpoint is a static file, cached at the edge and open to cross-site requests.
| Endpoint | Returns |
|---|---|
| index.json | Dataset metadata, counts and the endpoint list |
| days/{YYYY-MM-DD}.json | One day: headline, summary, events, people, places, letters, TR quotes, tags, life periods, TRA page citations |
| on-this-day/{MM-DD}.json | That calendar date in every year of his life, most significant first |
| months/{YYYY-MM}.json | Compact records for a month |
| years/{YYYY}.json | Compact records for a year |
| people/index.json | Everyone in the record, with group, description and day counts |
| people/{id}.json | One person, every day they appear, frequent companions and places |
| places/index.json | Every place, with coordinates and days present |
| places/{id}.json | One place and every day he was there |
| stays.json | Runs of consecutive days in one place, for maps and journeys |
| periods.json | Life stages, offices, journeys and campaigns, with dates |
| tags/index.json, tags/{tag}.json | Topic tags and the dates carrying each |
| highlights.json | The days rated major or history-making |
| grid.json, search.json | Compact per-day rows for visualizations and client-side search |
fetch("https://daybyday.labs.trlibrary.com/api/v1/on-this-day/10-27.json")
.then(r => r.json())
.then(d => console.log(d.days[0].headline));
Downloads
- days.csv, one row per day, for spreadsheets
- days.jsonl, the full dataset, one JSON day per line
- people.json, places.json, periods.json
- events.jsonl, letters.jsonl, quotes.jsonl
How it was made
The facts come from the Theodore Roosevelt Association's Chronological Record, a day-by-day calendar of Roosevelt's life compiled by Robert J. Moore Jr. in 1985 and held in the Theodore Roosevelt Collection at Harvard. Every day cites its pages in that record. The Library wrote each headline, summary and event description in its own words; the record's text is not reproduced.
Where he was comes from the record's place-names index, refined by the places named in each day. Days with no entry carry forward his last known location and are marked that way. Coordinates come from GeoNames and OpenStreetMap.
Roosevelt's own words (tr_quotes) are given as transcribed in the record and marked "verified": false. Check them against the original letter, diary or speech before quoting them in print.
Credit
Data: CC BY 4.0, Theodore Roosevelt Presidential Library. Please credit “Theodore Roosevelt Presidential Library, Day by Day” with a link to this site. Code: MIT. Geodata © OpenStreetMap contributors (ODbL) and GeoNames (CC BY 4.0).