FreeMarker is a template engine. That is, it provides an easy way to generate text (HTML, source code, configuration files, emails, etc.) that depends on changing data. It's designed to separate the rendering/formatting logic (like visual design, HTML issues, etc.) from the backing application logic and technical complexity. It has a flexible API so you can integrate it into your application the way that best fits it.