back to home

HubSpot / jinjava

Jinja template engine for Java

771 stars
172 forks
130 issues
JavaHTMLJinja

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing HubSpot/jinjava in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/HubSpot/jinjava)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

jinjava Java-based template engine based on django template syntax, adapted to render jinja templates (at least the subset of jinja in use in HubSpot content). Currently used in production to render thousands of websites with hundreds of millions of page views per month on the HubSpot CMS. *Note*: Requires Java >= 8. Originally forked from jangod. Get it: ------- where LATEST_VERSION is the latest version from CHANGES. or if you're stuck on java 7: Example usage: -------------- my-template.html: java code: result: Voila! Advanced Topics --------------- Template loading Jinjava needs to know how to interpret template paths, so it can properly handle tags like: By default, it will load only a which will allow loading from ANY file in the classpath inclusing class files. If you want to allow Jinjava to load any file from the file system, you can add a . Be aware the security risks of allowing user input to prevent a user from adding code such as . You will likely want to provide your own implementation of to hook into your application's template repository, and then tell jinjava about it: To use more than one , use a . Custom tags, filters and functions You can provide custom jinja tags, filters, and static functions to the template engine. See also • Javadocs