Features

T4 Awesome has 3 editions to choose from: Community, Standard, and Professional. The Community edition is free and allows you to access all the basic features T4 Awesome has to offer. The Standard and Professional editions allow you to utilize more features for the current major version at the time of purchase. Standard and Professional editions also allow you to upgrade to the next major version at a discounted price. Minor version enhancements are always available free of charge for all editions.

Basic Features

Community Edition Standard Edition Professional Edition
Item Management Interface
A common set of tool windows to help create and manager your T4 templates.
Allowed for personal or commercial use
All editions can be used for personal or business projects.
Unlimited email support requests for questions and help
We provide quick response to support request via email for all editions.

Item Types

A T4 Item is a set of details, parameters, and one or more outputs. This set of information is everything that is needed to prompt for variables, render T4 Templates, and control the processed results final location on disk. There are three types of T4 Items: Code Items, File Items, and Custom Items.

Community Edition Standard Edition Professional Edition
Code Item Types
A type of T4 Item that is used to insert the processed results of a template into an open document. Think of code snippets but with more control.
File Item Types
A type of T4 Item that is used to create new physical files in your projects. You fully control the content and location of the new file using T4 Awesome parameters and Visual Studio custom menu items. A single File Item can have multiple outputs to support creating web and windows forms that contain designers backed by code behind files.
Custom Item Types
A type of T4 Item that is used to create scripts that call one or multiple T4 File Items. Scripting allows you to generate multiple items at once from a single set of parameters. Using the database schema and data access method and a Custom Item, you can generate multiple layers of you application in seconds, easily controlling names and locations of all new files created. The standard edition allows running these type of items but does not allow creating or editing. To create or edit custom items, you must use the professional edition.

Item Editing

T4 Awesome provides a custom editing experience for working with T4 Items and their T4 output files. From basic syntax coloring to assistance with debugging, T4 Awesome is there to help! The professional and standard editions offer additional editing features not available in the community edition.

Community Edition Standard Edition Professional Edition
Namespaces UI
Add additional namespaces per template from an easy to use UI.
Basic Syntax Coloring
Basic syntax coloring for T4 tokens.
Template Code Preview
Preview the actual code that is generated by the T4 framework. This is useful for debugging as some of the error messages generated by the text transformation process reference lines in this file.
T4 Item Sharing
Easily share your T4 Items between projects and computers using the import/export wizards. Package up multiple T4 Items and save in a personal repository available to all projects on your computer or save as a zip file and share with friends.
Assembly References UI
Add additional assembly references per template from an easy to use UI.
Extended Syntax Coloring
Syntax coloring for child language tokens. (C# and VB.Net)
Code Completion
Full code completion for the child language of your T4 templates. (C# and VB.Net)
Render Preview and Debugging
Edit a T4 template, set your parameter values, and click Preview Output, it's that simple. If your template has errors, T4 awesome will show you the error list and the final template that was executed, all you have to do is find the line numbers and character positions and start debugging. T4 Awesome puts it all right at your finger tips.

Item Rendering

Rendering is the process of converting a T4 Item into usable code or text in your project. After rendering is complete, the results are added to your project or inserted into the active document based on the context that invoked the rendering. The professional and standard editions offer additional rendering options not available in the community edition.

Community Edition Standard Edition Professional Edition
Insert directly into the active document
Right click in any text file and inject your custom T4 template result.
Add from solution explorer
Right click on any folder in solution explorer and add a new file using your custom T4 templates. Allows you to quickly build your own custom scaffolding for your projects.
File Item sub paths
Create multiple sub folders for your outputs allowing you to have fine grain control of the final output location. Easily organize your scaffolded items into the exact folder structure you desire. Sub paths even support replacement tokens allowing you to customize them based on item parameters.
Attach to existing files
Right click on any existing file in solution explorer and add new sub files using your custom T4 templates. Sub files are added using the built in depends on linking just like designer and code behind files are attached for win and web forms.
Add your own context menu shortcuts
If you like the way MVC projects have a right click, add controller/add view menu option then this feature is for you! Add your own named shortcuts to any folder or project context menu. Using simple rules, you can completely control when your shortcuts appear on folder or project context menus. Your shortcuts directly invoke the render menu for their file item allowing you to create a truly customize development experience.
Multiple new files from Custom Item
Launch a Custom Item, fill in the parameters, and watch multiple files in multiple projects appear in your solution. Custom scaffolding at it's best!

Item Parameters

Define parameters the will be passed to your T4 templates during the rendering process. During the rendering of your template, these parameters will be available to inspect and use to customize your final output. The professional and standard editions offer additional parameter types not available in the community edition.

Community Edition Standard Edition Professional Edition
Text Parameter
Passes a simple text string to your custom T4 template.
Single Select List Parameter
Allows you to define a list of options and pass one of those options to your custom T4 template.
Yes/No Parameter
Passes a simple boolean yes/no value to your custom T4 template.
Database Single Table/Stored Procedure
Passes meta-data about a single database table/stored procedure.
Basic Code Type Parameter
Allows you to select from any class, interface, or struct in any of the projects in your solution and pass the class name to your custom T4 template.
Extended Code Type Parameter
Just like the basic code type parameter but will pass all the function, property, and attibute meta data of the selected code element to your custom T4 template. The meta data available in the template from this parameter can be fully queried and used to generate other code. Prior to version 0.2015.12.128 this feature was only available in standard and above.
Multi Select List Parameter
Just like the single select list parameter but allows you to pass multiple options to your custom T4 template.
Multi Code Type Parameter
Just like the single code type parameter but allows you to pass multiple code types to your custom T4 template.
Database Multi Table/Stored Procedure
Passes meta-data about multiple database tables/stored procedures. Is useful for scaffolding database objects to a single file with multiple classes like the original Linq To Sql did.
Database Full Schema
Passes meta-data about the full schema of a database. When used a custom item you can easily generate your own poco classes from database tables to multiple files in any subfolder you desire.

Template Execution

When your templates are executed by T4 Awesome they are provide a custom host with helper methods that solved common issues you may face. During the rendering of your template you can access these custom methods to make short work of string formatting, database schema and data access, and even calling other T4 Items. The professional and standard editions offer additional methods not available in the community edition.

Community Edition Standard Edition Professional Edition
Custom String Formatting
To make working with strings easier inside your templates, the T4 Awesome host exposes several methods that are just wrappers to the excellent Humanizer text formatting open source library.
Database Data
To make accessing database data easier, the T4 Awesome host exposes several methods that the wrap the Dapper-Dot-Net open source library. these methods make it simple to generate code />text from database data.
Database Schema
To make accessing database schema easier, the T4 Awesome host exposes several methods that the wrap the Database Schema Reader open source library. these methods make it simple to generate code />text from database schema.
T4 Awesome and Visual Studio
To support the scripting of multiple T4 File items at once, the T4 Awesome host exposes several methods for working with T4 Awesome parameters and items. Access to these methods allow you to call other T4 File items you have written and execute them. Each T4 File item will render it's outputs as you have already defined. The end result can be multiple files created in multiple projects inside your solution from the click of a button.
Free $49 $99
Download Buy Now Buy Now
Features marked with preview are not in the current release available on Nuget or the public download links. To use these features, you must login into the customer area and download the latest version from the "My Downloads" page.