Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Telosys is a template-driven code-generation tool: it turns a project model into files using a selected bundle of templates. To generate code, initialize a Telosys project, set up or obtain a model, install or create a template bundle, and run the CLI’s gen command. The output depends on both the model and the bundle—not on Telosys alone.

What is Telosys?

Telosys is a Java-based command-line tool for generating files from structured application models and reusable template bundles. The model describes the application’s domain; templates define which files to produce and how to produce them. Developers can use the CLI with any editor or IDE, including VS Code and JetBrains IDEs. The CLI project is licensed under the GNU Lesser General Public License v3.0.

Telosys is therefore not a fixed code generator that produces one predefined application structure. Its output reflects the selected model, bundle configuration, and templates. The project describes customization as a central design goal in its bundle documentation.

How do Telosys models and template bundles work?

The model represents the application domain

A Telosys project needs a model that describes the entities and other domain information used during generation. The official getting-started guide documents three ways to obtain one: create an empty model and build it, derive a model from a relational database schema, or install an existing model from a depot or Git repository.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The bundle defines the generated files

A template bundle groups the instructions and resources used to generate files. It requires a templates.cfg configuration file and can include Velocity .vm templates, static resources, a README, and subfolders. The configuration specifies templates, output directories and file names, and execution mode. A template file that is not listed in templates.cfg is not used for generation.

The documented execution modes include per-entity generation (*), once-only generation (1), and plain resource copying (R). Bundles can be adapted: developers can edit templates, add or remove generation tasks, and include static resources. This makes the bundle the main place to align generated files with a project’s conventions.

How do you generate code with Telosys?

The official workflow has four stages. The CLI’s project configuration is stored in TelosysTools/telosys-tools.cfg; a model and a bundle must be available before generation.

  1. Initialize a project. Follow the getting-started guide to create the Telosys project structure and configuration.
  2. Set up a model. Create one from scratch, derive it from a relational database schema, or install an existing model.
  3. Set up a bundle. Install a suitable bundle or create and configure one. Check that its templates.cfg lists the tasks you intend to run.
  4. Run generation. Use gen in the current model and bundle context. The documented command pattern is gen *|entities *|templates [-r] [-y].

In the command pattern, choose * to select all entities or templates, or provide names to narrow the selection. The -r option copies static resources when the bundle supplies them; -y accepts confirmation prompts. The generation-command documentation gives the command details and examples.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What languages does Telosys support?

Telosys’s target-language documentation lists preconfigured support for C++, C#, Go (Golang), Java, JavaScript, Kotlin, PHP, Python, Scala, and TypeScript; Java is the default. Language selection can affect type mappings and other helper behavior in templates. The documentation also says users can target other languages if they handle the language-specific details themselves. That flexibility does not mean every language has the same level of ready-made template coverage.

What should you check before choosing a workflow?

The practical starting point is what you already have and what you need the generated files to look like:

  • No model yet: decide whether to build one manually, derive it from a relational database, or start with an existing repository model.
  • No usable bundle: find or create templates that match the target language and project conventions; generation requires a bundle.
  • A bundle exists but its output differs from your project: review its configuration and customize the templates or tasks rather than assuming the generator will infer your conventions.
  • Choosing a target language: check the relevant language mappings and bundle coverage. The documented language list establishes preconfigured targets, not equal maturity or suitability for every use.
  • Choosing how to work: the CLI is designed to work with any editor or IDE, so an IDE is not a prerequisite. The documentation describes IDE use but does not establish that one workflow is more usable than another.

What kinds of templates are available?

The Telosys template-bundle organization includes examples such as Java REST CRUD with Spring Boot and Spring Data JPA, Java JPA entities, Liquibase files, Python persistence with SQLAlchemy, Bottle MVC, and model or database documentation. These are examples of available projects, not a guarantee that every bundle is equally current, maintained, or production-ready; activity varies among repositories.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

What Telosys does not establish

The official materials describe how to configure and use generation, but do not provide a quantitative basis for claims about productivity, adoption, generated-code quality, or performance. Results should be assessed against the particular model, bundle, and project requirements rather than inferred from the tool’s language list or example bundles.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The CLI is developed with Java, and the official CLI documentation states that the Java Runtime Environment is the only requirement to use it. Telosys’s CLI repository likewise describes it as usable with any editor or IDE.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.