Skip to content

✒️ Markov process-based procedural name and word generator demo

License

Notifications You must be signed in to change notification settings

Steven-OConnell/MarkovNameGenerator

 
 

Repository files navigation

Markov Namegen logo

Build Status Badge License Badge

Markov Namegen is a Markov chain-based procedural name generator library and demo website written in Haxe.

Run the demo in your browser. It demonstrates the markov-namegen haxelib. Read the library docs here.

Features

  • Hundreds of customizable/combinable training data presets.
  • Configurable corpus, order and prior model parameter settings.
  • Filter results by length, start, end, content and regex match.
  • Sort by Damerau-Levenshtein distance to list results by similarity.
  • Save and share custom data, settings and results with one click.

Usage

Run the demo to generate your own words. Press the "Generate" button to begin, or select "Settings" to configure advanced options.

For example, enter the settings:

Training Dataset: English Towns
Order: 5
Backoff: 1 (on)
Length: 8-12
Starts with: b
Include: ham
Similarity To: birmingham

Click the "Generate" button and the results will be displayed on the page. Here are my first 10 results when using the settings above:

Barkingham Basingham Birkenham Bebingham Bollingham Bridlingham Billenham Berwickham Botteringham Bradnincham

Screenshots

Here is the demo in action. Using a single data set:

Screenshot

Appending two presets:

Screenshot

Joining the individual words from two presets:

Screenshot

Demo Setup

To run the demo locally, clone the repository and run the following in your console within the root folder of the repository:

haxe MarkovNames.hxml

Then navigate to the bin directory and open index.html in a web browser to use the name generator.

Notes

  • Many of the concepts used for the generator were suggested in this article by Jeffrey Lund.
  • If you have any questions or suggestions then get in touch or open an issue.
  • The embedded word lists are included in the name generator library repository.
  • Read the documentation.

License

  • The haxelib code is provided under the MIT license.
  • The website and demo code are licensed under CC BY-NC.
  • The noUiSlider settings sliders are WTFPL.

About

✒️ Markov process-based procedural name and word generator demo

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 92.6%
  • Haxe 4.7%
  • CSS 1.5%
  • HTML 1.2%