N2O разрабатывался как многофункциональный websocket-сервер приложений широкого назначения. Будучи ответвлен изначально от классического сервер-рендер фреймворка Nitrogen, он развился в мощное средство (включающее и поддержку SPA-приложений) обеспечения пула долгоживущих TCP-соединений и доставки кода/данных, выступая в качестве высокоемкостного релея, благодаря надежной и высокоустойчивой платформе Erlang/OTP.
Соединяя в себе все черты full-stack веб-фреймворков — роутинг, шаблоны, Pub/Sub, сессии, хранилище, REST и поддержка собственных протоколов — N2O добавляет совершенно уникальные возможности для создания различных DSL. Вы можете транслировать в JavaScript бизнес-логику, написанную на языках Erlang (Elixir, Erlang, Joxa), генерировать трансформации Erlang-записей в JSON, определять JavaScript-протоколы на языке Erlang и многое другое.
Сейчас N2O развивается в сторону поддержки SVG-клиентов и бинарных протоколов.
Основные изменения в версии 1.8:
- полная семантическая верстка HTML5 в DSL;
 - автоматические реконнекты;
 - новый сессионный менеджер автогенерируемых логинов;
 - расширение бинарного протокола для Data-on-Wire;
 - зависимость от jQuery стала опциональной;
 - Shen: компилятор JavaScript из Erlang;
 - улучшенная rebar-совместимая система сборки MAD;
 - возможность запаковать сайт в виде исполняемого файла, который можно запустить на Windows, Linux и Mac;
 - улучшенный REST-эндпойнт;
 - возможность создания SPA-приложений;
 - новые примеры приложений Skyline (DSL) и Games (SPA).
 - улучшенный Secure сериализатор;
 - вышла книга по N2O.
 
Страница проекта на GitHub: https://github.com/5HT/n2o
Домашняя страница: https://synrc.com/apps/n2o/
Презентация: http://slides.com/maximsokhatsky/n2o











