CodeSmith 2.5 has now been released and, along with it, there is now a CodeSmith Professional version which currently includes CodeSmith Studio. All of the features and more from the previous versions remain FREEWARE, but with the introduction of CodeSmith Professional some new features (CodeSmith Studio for now) will become part of the CodeSmith Professional version. CodeSmith Studio makes creating your own custom templates a LOT easier.
CodeSmith includes a custom tool for Visual Studio .NET 2003 users that allows the use of CodeSmith to simulate generics. Unlike normal generics, you are able to have templates for things much more complicated than strongly typed classes based on type parameters. You can include a single template in your project and have it generate code from that template based on multiple property sets. A sample use of this custom tool is to build a template that generates your data access layer objects based on the current database schema. Any changes made to the template or the database schema will be reflected in all the objects by simply re-running the custom tool.
The article continues at http://www.ericjsmith.net/codesmith/