sanctus
v1.0.15
Published
Generate saints of the Martyrology of the Roman Catholic Church
Maintainers
Readme
Quickstart setup
Install module:
npm i sanctusSample uses
import {SaintInfo, Sanctus} from "sanctus";
const sanctus = new Sanctus();
// Get a single saint for February 17, 2025
const saint: SaintInfo | undefined = sanctus.getSaint(new Date(2025, 1, 17));
console.log(saint?.name); // "San Teodoro de Bizancio"
// Get a saint using month (0-11) and day
const saintByDate: SaintInfo | undefined = sanctus.getSaintFromMonthDay(2, 17);
console.log(saintByDate?.name); // "San Teodoro de Bizancio"// Get all saints of the current day
const sanctus = new Sanctus();
const saintsOfDay: SaintInfo[] = sanctus.getSaintsOfDay();
console.log(saintsOfDay);// Set a new date
sanctus.setDate(new Date(2025, 5, 1));
const saintsFromNewDate: SaintInfo[] = sanctus.getSaintsOfDay();
console.log(saintsFromNewDate);Test
To run the test suite (with vitest), execute:
To run the app:
# linux and mac users:
make test
# for windows users:
npm run testSanctusInterface Documentation
The SanctusInterface provides methods to retrieve information about saints based on dates or direct month/day lookups.
Interface Definition
export interface SanctusInterface {
getSaint: (date?: Date) => SaintInfo | undefined;
getSaintFromMonthDay: (month: number, day: number) => SaintInfo | undefined;
getSaintsOfDay: (date?: Date) => SaintInfo[];
getAllSaints: () => SaintInfo[];
getCurrentDate: () => Date;
setDate: (date: Date) => void;
}Function Documentation
| Method | Description | Parameters | Return Type | Example Call |
|------------------------|---------------------------------------|------------------------------|--------------------------|--------------------------------------------|
| getSaint | single saint info for the given date. | date?: Date | SaintInfo \| undefined | sanctus.getSaint(new Date(2025, 1, 17)); |
| getSaintFromMonthDay | single saint for month and day. | month: number, day: number | SaintInfo \| undefined | sanctus.getSaintFromMonthDay(2, 17); |
| getSaintsOfDay | all saints for the given date. | date?: Date | SaintInfo[] | sanctus.getSaintsOfDay(); |
| getAllSaints | all saints in the database. | None | SaintInfo[] | sanctus.getAllSaints(); |
| getCurrentDate | currently set date in the instance. | None | Date | sanctus.getCurrentDate(); |
| setDate | Sets a new date | date: Date | void | sanctus.setDate(new Date(2025, 5, 1)); |
SaintInfo Type Definition
export type SaintInfo = {
month: number;
day: number;
category: number;
name: string;
birth?: string;
dead?: string;
meaning?: string;
shortDescription?: string;
description?: string;
};SaintInfo Properties
| Property | Type | Required | Description |
|--------------------|----------|----------|--------------------------------------------------|
| month | number | ✅ Yes | Month of the saint's feast day (1-12). |
| day | number | ✅ Yes | Day of the saint's feast day (1-31). |
| category | number | ✅ Yes | Category or rank of the saint: principal or not. |
| name | string | ✅ Yes | Name of the saint. |
| birth | string | ❌ No | Birth year or approximate time. |
| dead | string | ❌ No | Death year or approximate time. |
| meaning | string | ❌ No | Meaning or significance of the saint's name. |
| shortDescription | string | ❌ No | Brief summary of the saint. |
| description | string | ❌ No | Detailed description of the saint's life. |
