ставим эрланг, если не стоит
$ brew install erlang
получаем nitrogen
$ mkdir example && cd example $ git clone git://github.com/nitrogen/nitrogen.git
создаем проект
$ cd nitrogen $ make rel_inets PROJECT=test
подключаем модуль ErlyDTL
$ cd ../test $ vim ./rebar.config
в секцию deps добавляем строчку
{erlydtl, ".*", {git, "git://github.com/erlydtl/erlydtl", {branch, master}}}
подтягиваем зависимости с гитхаба
$ ./rebar get-deps compile
запускаем наше приложение и заставляем мониторить изменения в коде
$ bin/nitrogen console $ bin/dev compile
создаем тестовую страничку
$ bin/dev page test
и самый простой шаблон
$ vim site/templates/test.dtl
который выглядит вот так
{{ test_var }}
правим наш сгенерированный код
$ vim site/src/test.erl
вносим туда примерно вот это
-module (test). -compile(export_all). -include_lib("nitrogen_core/include/wf.hrl"). -include("records.hrl"). template_path(Template) -> filename:join(["./site", templates, Template]). render_template(Name, Variables) -> Template = template_path(Name ++ ".dtl"), Mod = list_to_atom(Name ++ "_tpl"), {ok, Mod} = erlydtl:compile(Template, Mod), {ok, Body} = Mod:render(Variables), Body. main() -> render_template("test", [{test_var, "Hello, World!"}]).
и в браузере смотрим результат по адресу http://127.0.0.1:8000/test