Skip to content

mcorrell/repubdate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

repubdate

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.

Installation

Install using npm:

$ npm install repubdate

Usage

toRevolutionaryString

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 VIII

toRevolutionaryString 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"

toRevolutionaryObject

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'

About

Date conversion and display for the French Republican Calendar

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •