Меня оттолкнул SWIG отсутствием (и нежеланием автора) добавить возможность вызывать функции в шаблонах
После чего перешел на atpl (тот же синтаксис, но работает вызов функций и автор адекватно реагирует на Feature Request)
Насчет вызова функций — это скорее вопрос идеологии, нежели нежелание автора. В Django решили что незачем верстальщикам давать возможность вызывать функции, я с этим согласен, учитывая наличие удобной системы кастомных фильтров и тегов.
К тому же atpl не поддерживает работу в браузере, если не ошибаюсь.
Меня в свиге неприятно удивил тот момент, что настройка пути к шаблонам одна и та же на весь модуль. Это означает, что в одном инстансе node-процесса нельзя крутить два варианта вёрстки / два вебсайта, они обязаны шарить один и тот же путь к шаблонам. Почему нельзя сделать инстанцируемый движок шаблонов с отдельными настройками для каждой инстанции — для меня загадка.
Swig — JavaScript шаблонизатор с Django Template синтаксисом