Skip to content
Fake text, powered by Markov chains
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Fake text, powered by Markov chains

npm version

markov-chains-text is a simple, Markov chain-based text generator written in JavaScript, and designed for both Node and the browser. It can be used to generate random sentences modeled after a large corpus of text.

Table of Contents


import { readFileSync } from 'fs';
import path from 'path';
import Text from 'markov-chains-text';

const MobyDick = readFileSync(path.join(__dirname, 'moby-dick.txt'));

// build the generator
const fakeMobyDick = new Text(MobyDick);

// generate a sentence
const sentence = fakeMobyDick.makeSentence();


// Example output:
//   And as the Porpoise is the harpooneer might be his immediate purpose,
//   touching his own kith and kin to noble Benjamin--this day darting the
//   barbed iron from one to the captain dared not attempt, he snatched the
//   rope attached to it--for they were humbug.

Back to Top ↑

Installation & Usage


markov-chains-text relies on Maps and Generators, which are available natively in Node v4.0 and above, and in modern versions of many browsers.

For a list of JavaScript environments that support these features, see the ECMAScript Compatability Table.


npm install --save markov-chains-text

Usage (ES6+)

import Text from 'markov-chains-text';
const fakeText = new Text(/* corpus: string */);

Usage (CommonJS)

var Text = require('markov-chains-text').default;
var fakeText = new Text(/* corpus: string */);

Back to Top ↑

API Reference

Coming Soon

Back to Top ↑


Pull requests are always welcome!


The following npm scripts are available for use during development:

Command Use to...
npm run clean Remove the dist/ files
npm run lint Lint the files in src/
npm run build Transpile the code with babel


markov-chains-text uses tape for testing.

To run the tests, just run npm test at the command line.

Back to Top ↑

See Also

Back to Top ↑


markov-chains-text is licensed under the MIT License.

For details, please see the LICENSE file.

Back to Top ↑

You can’t perform that action at this time.