0.1.2 • Published 6 years ago

transmogriverse v0.1.2

Weekly downloads
Last release
6 years ago

Build Status NPM version License


This module will search through text for Bible verse references (of various formats and abbreviations) and normalize. The caller may pass in a custom replacer function to use in order to replace the references with other formats, create hyper links, etc.


npm install transmogriverse

Usage Example

var replacer = require('transmogriverse');
var text = 'The first verse is Gen. 1:1';
text = replacer(text); // -> 'The first verse is Genesis 1:1'


var result = replacer(text ,callback)

The text is simply passed through String.replace() using a generated regular expression and a bunch of bailing-wire/chewing-gum type string manipulation. It tries to recognize various forms of common abbreviations for the names of the books of the Bible.

A callback function may be passed as an optional second argument and is called once for each verse reference discovered in the text.

The callback is passed a single argument, which is an object containing up to four fields:

  • book - {String} the name of the book, minus any ordinal prefix
  • chap - {Number} the chapter, integer
  • verse - {Number:optional} verse
  • ord - {Number:optional} the ordinal value of the book (ie: 1 for 1 Corinthians)

Whatever the callback returns will be used to replace the reference that has been found. You may return fancy hyperlinks, pretty html or UTF8 strings with roman numerals, etc.


  • add support for apocrypha in abbreviations

6 years ago


6 years ago


6 years ago