Реализован MVP телеграм бота для изучения языков
Основные компоненты: - База данных (PostgreSQL) с моделями User, Vocabulary, Task - Интеграция с OpenAI API для перевода слов - Команды: /start, /add, /vocabulary, /help - Сервисы для работы с пользователями, словарем и AI Реализовано: ✅ Регистрация и приветствие пользователя ✅ Добавление слов в словарь с автоматическим переводом ✅ Просмотр личного словаря ✅ Архитектура проекта с разделением на слои 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
41
main.py
Normal file
41
main.py
Normal file
@@ -0,0 +1,41 @@
|
||||
import asyncio
|
||||
import logging
|
||||
|
||||
from aiogram import Bot, Dispatcher
|
||||
from aiogram.client.default import DefaultBotProperties
|
||||
from aiogram.enums import ParseMode
|
||||
|
||||
from config.settings import settings
|
||||
from bot.handlers import start, vocabulary
|
||||
from database.db import init_db
|
||||
|
||||
|
||||
async def main():
|
||||
"""Главная функция запуска бота"""
|
||||
# Настройка логирования
|
||||
logging.basicConfig(
|
||||
level=logging.INFO if settings.debug else logging.WARNING,
|
||||
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
||||
)
|
||||
|
||||
# Инициализация бота и диспетчера
|
||||
bot = Bot(
|
||||
token=settings.bot_token,
|
||||
default=DefaultBotProperties(parse_mode=ParseMode.HTML)
|
||||
)
|
||||
dp = Dispatcher()
|
||||
|
||||
# Регистрация роутеров
|
||||
dp.include_router(start.router)
|
||||
dp.include_router(vocabulary.router)
|
||||
|
||||
# Инициализация базы данных
|
||||
await init_db()
|
||||
|
||||
# Запуск бота
|
||||
logging.info("Бот запущен")
|
||||
await dp.start_polling(bot)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user