учебный проект · telegram bot · python
HelperBot — Telegram-бот для поиска материалов по программированию
HelperBot — это учебный pet-проект на Python, созданный для закрепления навыков работы с Telegram API, обработкой команд, inline-кнопок, выбором категорий и динамическим выводом информации. Бот помогает пользователю найти нужные учебные материалы: книги, курсы, документацию и практические упражнения по Python, C++, Web и Java.
Цель проекта
Основная цель HelperBot — практическое освоение работы с Telegram API: отправка сообщений, обработка inline-кнопок, callback-запросов, структура команд и организация простого меню. Проект использует реальные принципы обработки событий, но остаётся лёгким для обучения.
Бот помогает пользователю:
- выбрать язык программирования;
- получить подборку учебных материалов;
- читать документацию, статьи, книги;
- находить практические задания по выбранному языку.
С технической точки зрения проект тренирует:
- работу с python-telegram-bot (v20+);
- обработку команд /start, /help;
- callback-кнопки и inline-меню;
- асинхронную структуру приложений.
Функциональность
Команды
- /start — запуск бота и меню выбора языка;
- /help — помощь и объяснение работы;
- автоматическое меню через inline-кнопки.
Материалы
- Основы языка (Python, C++, Web, Java);
- Книги и методички;
- Курсы и интерактивные тренажёры;
- Официальная документация;
- Практические задачи (Codewars, LeetCode и др.).
Взаимодействие
- Inline-кнопки для выбора языка;
- Callback-кнопки для выбора категорий;
- Обновление сообщений без спама;
- Асинхронный Event-Loop.
Архитектура проекта
Структура файлов
main.py— основной файл бота;materials— словарь материалов;keyboards— inline-кнопки;handlers— обработчики команд;/img— превью.
Техническая логика
- Асинхронный
ApplicationBuilder; - Разделение логики CallbackQuery и Message;
- Статические словари материалов;
- Обновление сообщений через
edit_message_text.
Почему такая структура?
- минимальная сложность — идеально для обучения;
- легко расширить новыми разделами;
- код читаемый и чистый;
- подходит как маленький pet-проект в портфолио.
Моя роль
Я полностью разработал архитектуру и логику бота:
- написал структуру inline-меню;
- реализовал хендлеры для команд;
- построил дерево категорий и материалов;
- настроил асинхронный event-loop;
- тестировал работу бота в Telegram.
Ссылки и код
GitHub-репозиторий проекта
github.com/MorFusti/Helper-Pr.StudyTelegram-бот
@Helper_ProgramSrudybot — временно недоступен