Все шаблоны

Эксплуатация

Уведомления

Почта, Telegram и колокольчик в интерфейсе

Среднийуведомленияпочтаtelegram

Одно событие — несколько каналов доставки. Пользователь сам выбирает, о чём и куда получать, шаблоны лежат отдельно от кода отправки, неудачные отправки повторяются.

Что внутри

  • Почта, Telegram и колокольчик из одного события
  • Настройки каналов на стороне пользователя
  • Повтор при сбое с нарастающей паузой
  • Объединение частых уведомлений в дайджест

Что добавит в проект

Поверх общей базы — она уже даёт авторизацию, базу и интерфейс.

Таблицы в базе3

notificationsnotification_preferencesnotification_deliveries

Маршруты2

/dashboard/notifications/api/notifications

Переменные окружения2

SMTP_URL (не обязательна)TELEGRAM_BOT_TOKEN (не обязательна)
SMTP_URLне обязательна
Строка подключения к почтовому серверу
TELEGRAM_BOT_TOKENне обязательна
Токен бота для доставки в Telegram

Разбор архитектуры

Отправка отделена от события очередью: иначе медленный SMTP растягивает запрос пользователя, а его падение роняет действие, ради которого всё затевалось. Доставка по каждому каналу — отдельная строка со своим статусом, поэтому упавшая почта не мешает дошедшему Telegram.

Общая база

Пустое, но рабочее приложение: авторизация, база, UI-кит и деплой уже собраны и связаны между собой. Модули не переписывают его файлы — они добавляют свои и регистрируются в готовых точках расширения, поэтому их можно ставить в любом сочетании.

Next.js 16 (App Router)TypeScriptPostgreSQL + Drizzle ORMAuth.jsTailwind CSS + shadcn/uiDocker