Ruzel AbdrakhmanovAvailable for work
All projects
Telegram Bot

Barbershop Booking Bot

An FSM Appointment Flow

A Telegram booking bot for a barbershop: a step-by-step wizard (service → date → time → confirm) on a finite state machine, with generated free slots, reminders and an admin panel.

Year
2025
Client
Personal product
Role
Product & Full-Stack
Pythonaiogram 3 (FSM)SQLite

Problem :

A barbershop needed online booking that just works in Telegram — pick a service, a day and a free time, with no double-bookings and a reminder before the visit.

Solution :

A booking wizard on a finite state machine: service → date → time → confirm. Free slots are generated from working hours minus what’s taken and admin-blocked, past times are hidden, and the slot is re-checked right before booking to prevent doubles. A background task sends reminders.

My Role :

Everything — the FSM wizard, the slot engine, reminders and the admin panel.

Process :

aiogram 3 with FSM state; services, bookings and slots in SQLite; a bottom reply-keyboard menu and inline keyboards for the steps; a background reminders task inside the bot. No payments or LLM — the focus is clean business logic and state.

Outcome :

Hands-off scheduling: clients book in four taps, the shop sees today’s and the week’s bookings and can block slots. Shown here as rendered mockups of the real flow.

Tech Stack :

Python 3.11, aiogram 3 (FSM + MemoryStorage), aiosqlite (SQLite), and a background reminders task.

Available for new projects

Let's build something great

Start a project on Telegram
Ruzel

Fullstack developer & product engineer. Websites, web apps and Telegram bots, designed and shipped end to end.

FULLSTACK DEVELOPERFULLSTACK DEVELOPERFULLSTACK DEVELOPERFULLSTACK DEVELOPERFULLSTACK DEVELOPER
© 2020–2026 Ruzel. All rights reserved.