Этот сайт: один процесс, ноль зависимостей
Node.js без npm-пакетов, JSON вместо базы и админка внутри того же процесса. Почему для личного блога этого достаточно.
Этот миниблог — Node.js без единой npm-зависимости, nginx впереди и JSON-файл вместо базы. Не потому что «настоящие инженеры так не делают», а потому что для личного блога этого достаточно.
Что внутри:
- один HTTP-сервер на встроенном
node:http; - посты в JSON, запись атомарная: временный файл, потом rename;
- Markdown парсится своим небольшим парсером, весь HTML экранируется;
- админка с сессией, CSRF и превью — часть того же процесса.
Из зависимостей — только nginx и systemd, которые уже стояли на сервере. Обновление — rsync и перезапуск сервиса. Если сломается, я знаю, где смотреть, потому что знаю каждую строку.
Минус тоже понятен: нет готовых фич. Плюс — нет обновлений пакетов, уязвимостей в дереве зависимостей и сюрпризов при деплое. Для проекта, который должен просто работать, обмен честный.