Фреймворк
Посмотрите в сторону
Impress, для PHP-шника это будет более естественно. Все урлы мапятся на файловую систему, шаблоны и обработчики переопределяются. Созданием каталогов делается роутинг к страницам и к обработчикам API. Можно менять код обработчиков не перезапуская приложения, просто отредактировав файл на диске. Он подгружается в память и кешируется, то же самое происходит с шаблонами. Все без перезапуска, работает в многопоточном (кластерном) режиме. На нем уже десяток проектов работает под нагрузками. Вот статья на Хабре про Impress (написана в те времена, когда он был еще прототипом):
Прототип тоталитарного фреймворка для node.js
require/dic
Модульность в Impress специфиеская, обработчики разбиты на отдельные файла, а вот модели и контроллеры можно писать в виде библиотек вот в таком паттерне, как описан тут:
Паттерны JavaScript модулей в Impress для node.js и браузеров
Шаблонизатор
В Impress есть очень простой шаблонизатор, возможно, он не такой функциональный, но он очень производительный, в отличие, например, от EJS, который сделан просто безграмотно, ибо использует синхронное чтение шаблонов с диска. Для ноды синхронные операции вообще выбиваются из концепции и уничтожают все преимущества.
Если что, обращайтесь, это разработка моей компании, все оупенсорс, лицензия RUMI. Постепенно и документацию делаем, а примеров полно, хорошими примерами может служить админка к базам данных, выложенная в исходниках вместе с Impress в одном пакете.