Кейс 10 / 17 · Telegram Mini App · 2026
Episodr
Telegram Mini App для трекинга сериалов и фильмов с интеграцией TMDB, персональными уведомлениями и админ-панелью.
- Время разработки: 12 дней
- Строк кода: 8 500+
- Среднее время ответа API: < 120мс
- Uptime после запуска: 99%
Задача
Пользователи смотрят десятки сериалов параллельно и теряются в прогрессе: забывают номер серии, пропускают премьеры новых сезонов, не помнят что хотели посмотреть. Существующие трекеры живут отдельными приложениями — выпадают из привычного потока Telegram.
Решение
Нативный Telegram Mini App в фиолетовой тёмной теме: поиск сериалов и фильмов по базе TMDB, отслеживание прогресса по каждому эпизоду с таймкодами паузы, уведомления о новых сериях через бота, топы и рекомендации, карточки актёров с фильмографией и админ-панель с сегментированными рассылками.
Ключевое
Нативный TG-experience · HMAC-безопасность · TMDB-кэш 30× экономия · Production-ready
Что сделано
- Трекинг сериалов и фильмов с 4 статусами: Смотрю, Планы, Завершено, Брошено
- Отметка эпизодов: просмотрено / пропущено / на паузе с таймкодом в MM:SS
- Массовая отметка всего сезона одной кнопкой с транзакционным апдейтом БД
- Поиск по TMDB в трёх режимах: сериалы / фильмы / актёры с дебаунсом 300мс
- Топ TV и кино: Лучшие, В тренде, По жанрам с переключателем типа
- Рулетка «Что посмотреть?» — случайный выбор из Мои / Планы / Всё с haptic-feedback
- Похожие сериалы и фильмы, страница актёра с биографией и полной фильмографией
- Cron-уведомления о новых сериях через бота с обработкой 429 и параллельной отправкой
- Полная валидация Telegram initData через HMAC-SHA256, rate-limit на все endpoints
- Админ-панель: метрики, топ контента, поиск юзеров, карточки с их списками
- Сегментированные рассылки через бота: Все / Активные за N дней / Подписчики сериала
- Многослойное кэширование TMDB с LRU и разными TTL по типу эндпоинта (2мин–24ч)
- Виртуализация списков (react-virtuoso), srcset для постеров, WAL в SQLite
Этапы
- Анализ и проектирование (1 день) — Изучение TMDB API, проектирование схемы БД, продуктовый прототип в Figma
- Фронтенд Mini App (3 дня) — React 19 + Vite + Tailwind 4, фиолетовая темная тема, интеграция @twa-dev/sdk с BackButton, Haptic и safe-area
- Бэкенд и БД (3 дня) — Express + better-sqlite3 с WAL, миграции схемы, модульная архитектура (db/tmdb/auth/routes/cron/bot)
- Телеграм-интеграция (2 дня) — Long-polling бот с /start и web_app-кнопкой, валидация initData HMAC, cron-уведомления с rate-limit
- Админ-панель и рассылки (2 дня) — Статистика, топ, поиск пользователей, сегментированный бродкаст с preview и 25 msg/sec
- Деплой (1 день) — Ubuntu + Nginx + certbot, PM2 process-manager, HTTPS, привязка Mini App в BotFather
Следующий проект: Node & Thought