Production-ready платформа онлайн-запису для локального бізнесу (барбершопи, салони, клініки), що живе повністю всередині Telegram. Живе демо: @cutline_booking_bot — можна записатися прямо зараз.
Що зроблено:
• Бот на grammY: повний флоу запису (послуга → майстер → день → слот) на inline-клавіатурах, стейтлес — переживає перезапуски без втрати стану
• Mini App на Next.js 15 + React 19: нативне відчуття — тема Telegram, MainButton, haptic feedback, вибір слотів у пару тапів
• Кабінет майстра: другий режим Mini App за роллю — розклад тижня, підтвердження/скасування записів зі сповіщенням клієнта, закриття часу, статистика доходу
• Платежі Telegram Stars: опціональна передоплата, ідемпотентна обробка (повторні вебхуки безпечні), автоматичне повернення при скасуванні за політикою
• Серверний розрахунок вільних слотів: чиста функція з коректною роботою таймзон і переведення годинника, 18 юніт-тестів
• Нагадування за 24 та 2 години до візиту (BullMQ + Redis)
• Безпека: HMAC-валідація Telegram initData на кожному API-запиті, rate limiting, секрети в Secret Manager
• Інфраструктура: Docker, Google Cloud Run + Cloud SQL, CI на GitHub Actions (lint → typecheck → 40 тестів → build), Playwright e2e
• Дві мови інтерфейсу: українська та англійська
Стек: TypeScript (strict), grammY, Next.js 15, React 19, Tailwind v4, Prisma, PostgreSQL, BullMQ, Redis, Docker, GCP.
Код відкритий: github.com/M1rwana12/bookly
#telegram #telegrambot #miniapp #nextjs #typescript #prisma #grammy #booking #бот
Що зроблено:
• Бот на grammY: повний флоу запису (послуга → майстер → день → слот) на inline-клавіатурах, стейтлес — переживає перезапуски без втрати стану
• Mini App на Next.js 15 + React 19: нативне відчуття — тема Telegram, MainButton, haptic feedback, вибір слотів у пару тапів
• Кабінет майстра: другий режим Mini App за роллю — розклад тижня, підтвердження/скасування записів зі сповіщенням клієнта, закриття часу, статистика доходу
• Платежі Telegram Stars: опціональна передоплата, ідемпотентна обробка (повторні вебхуки безпечні), автоматичне повернення при скасуванні за політикою
• Серверний розрахунок вільних слотів: чиста функція з коректною роботою таймзон і переведення годинника, 18 юніт-тестів
• Нагадування за 24 та 2 години до візиту (BullMQ + Redis)
• Безпека: HMAC-валідація Telegram initData на кожному API-запиті, rate limiting, секрети в Secret Manager
• Інфраструктура: Docker, Google Cloud Run + Cloud SQL, CI на GitHub Actions (lint → typecheck → 40 тестів → build), Playwright e2e
• Дві мови інтерфейсу: українська та англійська
Стек: TypeScript (strict), grammY, Next.js 15, React 19, Tailwind v4, Prisma, PostgreSQL, BullMQ, Redis, Docker, GCP.
Код відкритий: github.com/M1rwana12/bookly
#telegram #telegrambot #miniapp #nextjs #typescript #prisma #grammy #booking #бот