Files
t-bot/README.md

1.6 KiB
Raw Permalink Blame History

Telegram Bot Template

Шаблон Telegram-бота на NestJS + Telegraf + Drizzle ORM + PostgreSQL.

Стек

  • NestJS — фреймворк
  • Telegraf — Telegram Bot API
  • Drizzle ORM — работа с БД
  • PostgreSQL — база данных
  • Zod — валидация

Быстрый старт

1. Установка зависимостей

pnpm install

2. Настройка окружения

Создай .env файл:

ENV=development
PORT=3000

DATABASE_URL=postgresql://admin:admin@localhost:5432/tg-bot
DB_PORT=5432
DB_USERNAME=admin
DB_PASSWORD=admin
DB_NAME=tg-bot

TELEGRAM_TOKEN=your_bot_token_here

3. Запуск PostgreSQL

docker-compose up -d

4. Миграция БД

pnpm db:push

5. Запуск бота

pnpm start:dev

Структура проекта

src/
├── app/
│   ├── bot/           # Telegram бот
│   └── user/          # Модуль пользователей
├── db/                # База данных (Drizzle)
├── middleware/        # Middleware
├── app.module.ts      # Главный модуль
├── env.validator.ts   # Валидация ENV
└── main.ts            # Точка входа

Команды

Команда Описание
pnpm start:dev Запуск в dev режиме
pnpm build Сборка проекта
pnpm db:push Применить схему к БД
pnpm db:generate Сгенерировать миграцию