Mono.TextTemplating is an open-source implementation of the T4 text templating engine, a simple general-purpose way to use C# to generate any kind of text files.
It's provided as a dotnet tool called t4:
$ dotnet tool install -g dotnet-t4
$ echo "<#@ parameter name='Name' #>Hello <#=Name#>" | t4 -o - -p:Name=World
Hello WorldYou can use the -c <classname> option to convert a T4 template into a C# class that can be compiled into your app and executed at runtime. For help on other options, use the -h argument.
To learn more about the T4 language, see the Visual Studio T4 documentation.
For more advanced use cases, the engine itself is also available as a library called called Mono.TextTemplating that can be integrated into any .NET 4.5+ or .NET Standard 2.0 app.
| Package | Description | 
|---|---|
| Mono.TextTemplating | T4 engine | 
| dotnet-t4 | T4 command-line tool | 
| dotnet-t4-project-tool | T4 command-line tool (DotNetCliToolReference version) | 
| Status | Platform | Runtimes | 
|---|---|---|
| Linux | Mono | |
| Windows | .NET Framework |