# Bundles of templates

Telosys code generation is based on "**templates**".&#x20;

A template is a text file composed of static parts and dynamic parts using statements and references to variables. There is a template file for each type of file to generate.

### Templates organisation

The Telosys templates are organised in "**bundles**".&#x20;

A "**bundle of templates**" is a set of templates files designed to generate different target files that can work together.

For more information about "**bundles**" see:

* [Bundles of templates](https://doc.telosys.org/bundles/bundle-structure)

### Sample template bundles

Some examples are available here :&#x20;

* [Bundles for Telosys 4.x (latest version)](https://github.com/telosys-templates)
* [Bundles for Telosys 3.x](https://github.com/telosys-templates-v3)

### Templates language

A template is a file with a "**.vm**" extension written in "**Velocity Template Language** (VTL)". Velocity is a well known Open Source template engine ( <http://velocity.apache.org/> )&#x20;

The **Velocity engine** used in Telosys is **version 1.7**

For more information about "**templates**" see :

* [velocity-language](https://doc.telosys.org/bundles/velocity-language "mention")
* [velocity-directives](https://doc.telosys.org/bundles/velocity-directives "mention")
* [velocity-objects](https://doc.telosys.org/bundles/velocity-objects "mention")
* [telosys-directives](https://doc.telosys.org/bundles/telosys-directives "mention")
* [telosys-variables](https://doc.telosys.org/bundles/telosys-variables "mention")
* [telosys-objects](https://doc.telosys.org/bundles/telosys-objects "mention")
* [code-snippets](https://doc.telosys.org/bundles/code-snippets "mention")
