Rant logo


**Rant** is an all-purpose procedural text engine that is most simply described as the opposite of Regex. It has been refined to include a dizzying array of features for handling everything from the most basic of string generation tasks to advanced dialogue generation, code templating, automatic formatting, and more. The goal of the project is to enable developers of all kinds to automate repetitive writing tasks with a high degree of creative freedom. ## Features * Recursive, weighted branching with several selection modes * Queryable dictionaries * Automatic capitalization, rhyming, English indefinite articles, and multi-lingual number verbalization * Print to multiple separate outputs * Probability modifiers for pattern elements * Loops, conditional statements, and subroutines * Fully-functional object model * Import/Export resources easily with the .rantpkg format * Compatible with Unity 2017 * *And much, much, much more...* ## Examples **Liven up a narrative with a few simple queries.** ``` likes to with pet on . ``` ``` Alick likes to mount shuttlecocks with his pet bat on Mondays. ``` --- **Count to ten and spell it out.** ``` [case:sentence][numfmt:verbal][rs:10;\s]{[rn].} ``` ``` One. Two. Three. Four. Five. Six. Seven. Eight. Nine. Ten. ``` --- **Write a poem** ``` [rhyme:perfect] The the . ``` ``` The bread fed the red head. ``` ``` The drug dug the smug plug. ``` --- ## NuGet Rant is also available as a [NuGet package](https://www.nuget.org/packages/Rant/). Enter this command in your package manager, and the latest version of Rant will automagically get installed in your project: ``` PM> Install-Package Rant ``` Or if development builds are your thing: ``` PM> Install-Package Rant -Pre ``` ## License Rant is provided under [The MIT License](https://github.com/TheBerkin/Rant/blob/master/LICENSE). ## Improve Rant If there is something you want fixed, added, or changed, feel free to submit an issue/pull request; I will try to get back to you within a day. If you would like to translate Rant into your native language, simply write a .lang file for it [like this one here](https://github.com/TheBerkin/Rant/blob/dev-3.0/Rant/Localization/en-US.lang). ## Rant Resources * [Rant Homepage](http://berkin.me/rant) * [Rant Documentation](http://berkin.me/rantdocs) * [Rantionary - Rant Standard Dictionary](https://github.com/TheBerkin/Rantionary) * [Online Pattern Tester](http://lett.at/rantbox/) ## Build Status Build status
Build status ## Support My Projects

If you love my work, please consider supporting me on Patreon. Alternatively, I also accept donations through PayPal. Donations help me make projects like Rant even better. Thank you.

Related Repositories

Rant

Rant

The versatile procedural text engine ...

best-of-rant

best-of-rant

The Rant Hall of Fame ...

emacshorrors.com

emacshorrors.com

Rant blog ...

RantCpp

RantCpp

The tentative C++ port of Rant ...

gradha.github.io

gradha.github.io

Rant corner ...


Top Contributors

TheBerkin cpancake Spanfile DevPrice paavohuhtala zhangfann

Releases

-   v2.0.0 zip tar