Watch the video about this project: https://youtu.be/sRbcw2sGkJw
Interactive Demo Translator tool here: https://paralogical.dev/glish/
Goal: Make a version of English where every word is only one syllable
Inputs:
- words by frequency (optimize monosyllabification for more common words) inputs/word_frequency.txt
- words with pronunciations and split by syllables (CMU Dict syllablized) Note: multiple valid pronunciations for any given word, but all American english
Stages:
syllablize.ts
→ convert CMU dict to JSON mapping of word → IPA split by syllablesmain.ts
→ load IPA syllables and generate new monosyllabic version of all wordssonorityGraph.ts
→ data structure that helps generate new syllables following sonority sequencing.respellIPA.ts
→ convert IPA back into "readable" latin alphabet.
To run code to generate Glish language mapping,
ts-node syllablize.ts
to generate outputs/syllablizedIPA.json + syllableGraph + big list of randomly generated syllablests-node main.ts
to generate outputs/monosyllabic.json & other monosyllabic results
To run UI,
cd ui
npm run dev