Telegram бот для отслеживания настроения, созданный на основе Grammy.js и PostgreSQL который помогает вести дневник эмоций.
- 📊 Ежедневное записи настроения
- 🏷️ Категоризация активностей
- 💾 История записей
- 📱 Удобный интерфейс
- 🔒 Конфиденциальность
- Backend: Node.js + Grammy.js
- База данных: PostgreSQL
- Сессии: @grammyjs/storage-free
- Меню: @grammyjs/menu
- Диалоги: @grammyjs/conversations
git clone https://github.com/quantumlgm/mood-diary-bot
cd mood-diary-bot
npm install
Создайте файл .env
в корне проекта:
BOT_KEY=your_telegram_bot_token_here
DB_USER_NAME=your_db_username
DB_HOST=localhost
DB_DATABASE=mooddiary
DB_PASSWORD=your_db_password
DB_PORT=5432
npm run created-table
npm run nodemon
/start
- Запустить бота и показать приветствие/menu
- Открыть главное меню/help
- Открыть меню помощи/create
- Создать новую запись о настроении/history
- Просмотреть историю записей
- Выбор настроения: 😣 🙁 😐 🙂 😃
- Выбор активностей по категориям:
- 🏖️ Отдых и забота о себе
- 💼 Работа и учеба
- 👥 Общение и социум
- Выбор эмоций:
- ❤️ Эмоции любви
- 😊 Эмоции радости
- 😠 Эмоции злости
- Комментарий дня - свободная заметка
- Подтверждение сохранения записи
src/
├── modules/
│ ├── keyboards.js # Клавиатуры
│ ├── commands.js # Команды
│ ├── handlers.js # Обработчики
│ ├── text-templates.js # Текстовые шаблоны
│ └── commands-menu.js # Меню команд
├── db-operations/
│ ├── db.js # Подключение к БД
│ ├── request-templates.js # SQL запросы
│ └── created-table.js # Создание таблицы
├── main-menu.js # Меню
├── create-note.js # Создания записи
└── index.js # Запуск бота
- Установите PostgreSQL
- Создайте базу данных
- Настройте
.env
файл - Запустите миграции:
npm run created-table
- Запустите бота:
npm run nodemon
Рекомендуемые платформы:
- Heroku с PostgreSQL аддоном
Если у вас есть вопросы или предложения:
- Создайте Issue
- Напишите в Telegram: @quantumlgm
⭐ Если проект вам понравился, не забудьте поставить звезду!