Metrical rhyming verse in Javascript
JavaScript Python
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

A web toy generating rhymed metrical verse using the CMU pronouncing dictionary. Try it at Derived from (but fancier now; but note that simpleverse can also generate use higher-order models and produce other verse forms -- you can see both in ).

Thanks to Shae Erisson, Flourish Klink, and Halsted Bernard for beta feedback.

To run this locally: point your browser at index.html.

To understand the code, you need to understand the data it's using. See 'About the CMU dictionary' and 'Phoneme set' at So, for example, one pronunciation of 'hello' is encoded as HH AH0 L OW1.

To rebuild the dictionary, you need some files not in the repo, and not handy to me (I'm on an extended trip). If you had them, you'd then:

  • Fetch cmudict.0.7a into this directory, from or specifically: wget

  • Run make. This filters and compresses the dictionary for the Javascript code's use. (For a more human vocabulary, quicker start, and lower bandwidth bills.)