Требования:
  • Node.js 20+ (клиент)
  • Bun 1.0+ (сервер)
  • pnpm 10+
  • MySQL 8+ / MariaDB или PostgreSQL 15+
  • ClickHouse (опционально, для аналитики)

Автоматическая установка

Самый простой способ — использовать установщик. Он сам проверит зависимости, распакует архив, настроит .env и применит миграции.
curl -fsSL https://verify.segmenta.store/install.sh | bash
Или запустите локально:
bash install.sh
Установщик спросит у вас:
  • Тип базы данных (PostgreSQL или MySQL / MariaDB)
  • Данные подключения к БД (готовый URL или хост / порт / пользователь / пароль / имя БД)
  • Порт API-сервера и URL клиентского приложения
  • Название сайта и описание
  • Использовать ли ClickHouse для аналитики
Установщик для Linux/macOS (install.sh) дополнительно спрашивает режим запуска (docker / pm2 / systemd), лицензионный ключ, источник кода (скачать с license-сервера или локальный архив), данные администратора и настройку reverse-proxy (nginx, SSL, firewall).
После завершения установки запустите проект:
cd segmenta
pnpm dev

Ручная установка

1

Клонируйте или распакуйте проект

Распакуйте архив Segmenta в нужную папку.
2

Установите зависимости

pnpm install
3

Создайте файл окружения

Создайте файл packages/env/.env со следующим содержимым:
DATABASE_URL="mysql://user:password@localhost:3306/segmenta"
DATABASE_DIALECT="mysql"
PORT=3001
NODE_ENV=development
CLIENT_URL="http://localhost:3000"
LICENSE_KEY="ваш-лицензионный-ключ"
Подробнее обо всех переменных — в разделе Переменные окружения.
4

Сгенерируйте модули

pnpm modules:generate
5

Примените миграции БД

pnpm db:push
6

Заполните начальные данные

pnpm db:seed
7

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

pnpm dev
После запуска будут доступны:
  • Клиент: http://localhost:3000
  • API-сервер: http://localhost:3001

Основные команды

КомандаОписание
pnpm devЗапуск в режиме разработки (клиент + сервер)
pnpm buildСборка для продакшена
pnpm startЗапуск сервера в продакшене
pnpm db:pushПрименить схему БД
pnpm db:migrateЗапустить миграции
pnpm db:seedЗаполнить начальные данные
pnpm db:studioОткрыть Drizzle Studio (GUI для БД)
pnpm modules:generateСгенерировать импорты модулей

Что дальше?

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

Настройте все параметры под ваш сервер.

Настройки сайта

Полный справочник настроек: SMTP, OAuth, платежи, S3 и другие.