<!-- logo is from: https://icons8.com/icon/40886/test -->
<img src="../documentation/logo2.png" align="right" valign="bottom">

# Text-Runner

> Test runner for text

Text-Runner makes rich text executable. An example is the documentation you are
reading right now. Text-Runner executes certain parts of it to verify that it
correctly describes how Text-Runner works. Text-Runner allows you to

- test your natural-language documentation
- make your end-to-end tests completely human-readable prose
- write computer programs in natural language

There are no limitations on the type of text that TextRunner can execute. It can
read and understand (if you tell it how) any form of plain text in any human
language as well as complex data in tables, bullet point lists, or embedded
images. This can be useful for things like

- **agile documentation:** your documentation always matches the behavior of the
  product it describes
- **[semantic versioning](http://semver.org):** know whether a product change
  affects documented behavior
- **[readme-driven development](http://tom.preston-werner.com/2010/08/23/readme-driven-development.html):**
  documentation becomes your product prototype and drives the implementation

More information about:

- [how it works](../documentation/how-it-works.md)
- [installation](../documentation/installation.md)
- [built-in actions](../documentation/built-in-actions.md)
- [user-defined actions](../documentation/user-defined-actions.md)
- [external actions](../documentation/external-actions.md)
- [questions and answers](../documentation/qna.md)
- [related tools](../documentation/related-tools.md)
