Опис та деталі проекту
Задача
Toilet Trainer Bot вирішує практичну задачу: Telegram-бот для приучення до горщика, що надає нагадування та серії успіхів. Python та UX для батьків.
Це особистий навчальний проект (в активній розробці), в якому відпрацьовувалися конкретні патерни та інструменти без зайвої обв'язки.
Кейс демонструє підхід до завдань у сфері "Чат-боти та автоматизація процесів": від постановки до здачі з чіткою структурою модулів.
Перед стартом зафіксували критерії готовності: зрозумілий перший екран, передбачувані помилки форм, можливість доопрацювання без переписування половини кодової бази.
Рішення
Зроблена навчальна, але повноцінна реалізація з акцентом на читабельність коду та відтворювану збірку.
Сценарії спроектовані так, щоб основні дії укладалися в один-два екрани: менше переключень, менше помилок при введенні. Навігація та підписи полів узгоджені з звичними патернами — користувачу не потрібно "вчити інтерфейс."
Окрему увагу приділено станам завантаження та порожнім спискам: skeleton/spinner там, де дані приходять асинхронно, і зрозумілі empty-state тексти замість порожньої таблиці.
Архітектура і стек
Сервер і дані: Python.
Інфраструктура та утиліти: Telegram.
Розподіл мов у репозиторії: Python (74.9%), TypeScript (12%), CSS (6%), Shell (4.7%), Dockerfile (0.7%), Mako (0.7%), JavaScript (0.6%), HTML (0.5%).
Шари розділені так, щоб UI не знав деталей транспорту: адаптери API/сховища, доменні типи, компоненти представлення. Це спрощує заміну бекенду та точкові UX-правки.
Ключові функції
- Python — використаний у продуктовой логіці: зменшує кількість самописного коду та прискорює додавання нових екранів.
- Telegram — використаний у продуктовой логіці: зменшує кількість самописного коду та прискорює додавання нових екранів.
Додатково:
- Інтеграція та використання Python у продуктовой логіці та інтерфейсі.
- Інтеграція та використання Telegram у продуктовой логіці та інтерфейсі.
- Валідація користувацького вводу та зрозумілі повідомлення про помилки.
Результат
MVP вже покриває ключовий сценарій; далі — розширення звітності, тестів та моніторингу.
Вихідний код відкритий: https://github.com/astropsy999/toilet-trainer-bot — можна оцінити структуру модулів та стиль комітів.
Що б покращив
Наступний крок — observability (логи/метрики), автотести на регрес та документація API для інтеграторів. Для high-load сценаріїв — профілювання вузьких місць та кешування довідників.
Часті запитання
Для чого потрібен проєкт «Toilet Trainer Bot»?
Telegram-бот для привчання до горщика: нагадування та серії успіхів. Python і UX для опікунів.
Який стек у «Toilet Trainer Bot»?
Технології: Python, Telegram.
Інформація про проект
Personal/LearningIn Development
- Створено: 11 Mar 2026
- Оновлено: 02 Aug 2026
- URL GitHub: Переглянути репозиторій