A package to allow Javscript Date objects to report the date in the style of the French Republican Calendar. The calendar was active for only twelve years, from 1793-1805, and it is unclear how it was meant to be extended to the current day. We use the Romme System to calculate the date for years outside of the bounds of the extant use of the calendar.
Install using npm:
$ npm install repubdate
repubdate creates a method, toRevolutionaryString, in the standard javascript Date object.
import "repubdate";
var napoleoncoup = new Date("11-9-1799");
console.log(napoleoncoup.toRevolutionaryString());
//outputs "18 Brumaire, an VIIItoRevolutionaryString can take an optional mode parameter, for other formats.
short uses short names for the months.
import "repubdate";
var napoleoncoup = new Date("11-9-1799");
console.log(napoleoncoup.toRevolutionaryString("short"));
//outputs "18 Bru, VIII"verbose uses the full name, includes the name of the day within the Décade, as well as the item, animal, or plant that is to be celebrated on that day.
import "repubdate";
var napoleoncoup = new Date("11-9-1799");
console.log(napoleoncoup.toRevolutionaryString("verbose"));
//outputs "Octidi 18 Brumaire, année de la République VIII, le jour du Dentelaire"english is the verbose string, but in English rather than French.
import "repubdate";
var napoleoncoup = new Date("11-9-1799");
console.log(napoleoncoup.toRevolutionaryString("english"));
//outputs "Octidi 18 Brumaire, year of the Republic VIII, the day of the Leadworts"numeric is a short version in DD/MM/YY format.
import "repubdate";
var napoleoncoup = new Date("11-9-1799");
console.log(napoleoncoup.toRevolutionaryString("numeric"));
//outputs "18/2/8"repubdate creates a toRevolutionaryObject method for formatting your own Republican dates. The object's values are listed here:
| Property | Type | Description | Example |
|---|---|---|---|
month |
Object |
Contains information about the month. | {...} |
month.name |
String |
The full name of the month in French. | 'Brumaire' |
month.sname |
String |
An abbreviated name for the month. | 'Bru' |
month.ename |
String |
The English translation of the month name. | 'Mist' |
month.number |
Number |
The numerical value of the month. | 2 |
day |
Object |
Contains information about the day. | {...} |
day.name |
String |
The French name associated with the day. | 'Dentelaire' |
day.ename |
String |
The English translation of the day name. | 'Leadworts' |
day.dname |
String |
The name of the day within the decimal week (décade). | 'Octidi' |
day.number |
Number |
The day of the month. | 18 |
year |
Object |
Contains information about the year. | {...} |
year.number |
Number |
The numeric representation of the year. | 8 |
year.roman |
String |
The Roman numeral of the year. | 'VIII' |