MillionSend: самохостинг платформы для отправки электронных писем

MillionSend: самохостинг платформы для отправки электронных писем

MillionSend — это открытая платформа для отправки электронных писем, которую можно развернуть на своём AWS SES или использовать в облаке. Она предлагает совместимый API с Resend, что упрощает миграцию, ведь нужно лишь изменить пару переменных окружения.

Проект позволяет эффективно управлять рассылками, поддерживает idempotency для предотвращения дублирования отправок, а также предоставляет инструменты для автоматического управления списками подавления, шаблонами и контактами. Грубо говоря, если ты искал решение для масштабной отправки писем и готов к самохостингу, то MillionSend — твой выбор. Он подойдет как для разработчиков, ищущих гибкость в управлении рассылками, так и для команд, которым нужны продвинутые метрики и интеграции.

MillionSend написан на Node.js и запускается через Docker. Учти, что перед использованием нужно будет аккуратно настроить API-ключи и проверить интеграцию с SES. Обрати внимание, что пока это решение может потребовать навыков администрирования и может быть не совсем готовым для продуктивного использования без ручной доработки.

Проект MillionSend — это платформа для работы с электронной почтой с открытым исходным кодом. С её помощью можно отправлять как отдельные письма, так и массовые рассылки. Ты можешь установить MillionSend на своём собственном AWS SES или использовать облачный сервис. Платформа совместима с API Resend, что делает миграцию простой — достаточно изменить две переменные окружения.

Возможности

MillionSend предлагает широкий набор функций:

  • API для работы с письмами: Совместимое с Resend API, поддерживает отправку, пакеты, получение и отмену писем.
  • Идемпотентность: Используй заголовок `Idempotency-Key` для предотвращения дублирования при повторной отправке.
  • API-ключи: Создавай и отзывай ключи `ms_` через панель управления, с возможностью отслеживания последнего использования.
  • Список подавленных адресов: Автоматически подавляются жёсткие отказы и жалобы; можно управлять адресами через API.
  • Метрики: Отслеживай количество отправленных писем вместе с показателями отказов и жалоб.
  • Webhook: Поддержка стандартных вебхуков с возможностью выбора событий для каждой конечной точки.
  • Поддержка доменов: Осуществляется проверка DNS; возможность привязки своего DKIM ключа.
  • Контакты: Управление контактами с возможностью импорта и сегментации.
  • Отказ от подписки: Возможность простого отказа от подписки через заголовки и специальную страницу.
  • Рассылки: Создание и планирование рассылок на всю аудиторию или определённые сегменты.
  • Шаблоны и поля слияния: Используй повторно шаблоны с индивидуальными полями для каждого контакта.
  • Логи запросов API: Ведение записи всех запросов с удалением конфиденциальной информации.
  • SMTP-релей: Возможна интеграция с SMTP через порт 2587 с аутентификацией по API-ключу.
  • Получение сообщений: В бета-версии предусмотрена возможность получения писем на проверенные домены.
  • Панель управления: Доступна на английском и португальском языках.
  • Самостоятельный хостинг: Поддерживается установка через Docker с использованиeм AWS SES.
  • Миграция с Resend: Инструменты для переноса контактной информации и настроек.
  • Мониторинг контента: Опциональная функция, использование которой зависит от настроек.

Запуск проекта

Чтобы запустить проект локально, просто введи одну команду в пустую директорию — без необходимости клонирования репозитория:

npx @millionsend/setup

Мастер установки создаст файл `.env` с сгенерированными секретами, а также может настроить ресурсы AWS (IAM, SNS и SES). Всё происходит с помощью команды `docker compose up -d`. Доступ к панели управления осуществляется по адресу http://localhost:3000, а к API — по http://localhost:3001.

Лицензия

Код проекта лицензирован под AGPL-3.0, а SDK поставляется под MIT. Название и логотипы MillionSend являются товарными знаками проекта и не подпадают под лицензию AGPL.

Сообщество

Если у тебя есть вопросы или идеи, ты можешь обсудить их в разделе Discussions на GitHub.

Открыть на GitHub: MillionSend/millionsend →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте