timescale.info
Sign inSign up

How OpenChronology was built

Every merged pull request of openchronology/timeline-app, its first week of commits and its releases; and before them the 2020 PureScript editor, from snapshots of its deleted repositories in the Wayback Machine. Written to this server through the HTTP API.

327 moments · 2020-03-09T00:15:08Z CE – 2026-11-02T20:11:21Z CE · by @athan · @athan

#355 · Ruler year marks round in BCE numbering, meeting CE at 1 CE

  • timeline-app
  • pull request

Closes #340 **Cause.** Year graduations (10 years and up) were aligned to astronomical year zero in `bounds` (`src/ruler.ts`), so a millennia view BCE marked astronomical −2000, −1000 and 0, which print as "2001 BCE", "1001 BCE" and "1 BCE". **Fix.** Whole-year levels now step in BCE/CE numbering: every *step* BCE (astronomical 1 − n·step) and every *step* CE, with **1 CE** between them where the eras meet (there is no year zero). An Ancient Egypt view after Fit all reads 3000 BCE · 2000 BCE · 1000 BCE · 1 CE, with century minor marks at 1500 BCE and so on. This applies to every year graduation (decades, centuries, millennia and larger). Single years, months, quarters and CE-only views stay as they were; the only CE change is that the mark where the eras meet sits on 1 CE instead of 1 BCE. Month levels keep their own arithmetic, unchanged. Deep time (beyond a million years BCE) still prints ages before 2000 CE (`mya`…), which round the same as before. **Docs.** `docs/time-presentation.md`, Gregorian ruler graduations. **Tests.** - `test/ruler.test.mjs`: new test of the printed labels at 1000-, 100- and 10-year graduations across the eras, the Egypt span, single years, and a CE-only view (fails on main, passes here). - `test/ruler-browser.mjs`: the civil ruler check also goes to 3500 BCE – 100 CE and reads the labels. - `npm test`, `npm run typecheck`, prettier and the chromium browser suite pass.

Sources

Open #355 · Ruler year marks round in BCE numbering, meeting CE at 1 CE in the timeline