Many of the Jinja functionalities reside as code blocks. These blocks are usually declared as: {% blocktype %} ... {% endblocktype %} . Code blocks not only enable you to organize your code better visually, but they also allow you to semantically divide your code into coherent blocks that provide one certain function.