CodeSmith Tools' Open Source Components

Sometimes I think that people don't realize how much code CodeSmith Tools has open sourced over the years. Sure some of these projects are CodeSmith specific (such as our many schema providers), but many of them are not dependent on us at all.

General Open Source Components

CodeSmith.Data

This is library. Included with the PLINQO source code, is not CodeSmith specific! It contains a slew of fun things such as cache providers, LINQ extension methods, and even a generic rules engine.

Some of these extension methods have now been made obsolete with the release of Selenium 2 Beta 1, but there are still many more useful methods here that allow for use of LINQ in element selection and simple interfaces for executing JavaScript.

While they are obviously CodeSmith specific, all of our Generator templates and frameworks are open source. This means that anyone is free to use them, learn from them, commit patches to them, upgrade them, and customize them as they choose. Can you imagine if LINQ to SQL had been open source? It would be a very different world, and PLINQO would probably be a very different framework.

CodeSmith Generator's Schema Explorer is architected around the provider model. Different database providers can be plugged into Schema Explorer, allowing all templates to use the same model regardless of which database they are being generated for. To ensure that users always have access to the best and most up to date providers, all of these have been open sourced and are packaged in the latest version of CodeSmith Generator. Here is a list of the providers that have been open sourced and included in the extracted samples: