Terminbot Ruhrwelle

The task
Clients of small salons and practices write in the evening, when nobody answers the phone. I wanted to show the owners what a bot can do for them: book an appointment at night, remind the client the day before, pass a cancelled slot to the waiting list. And I wanted them to be able to try it, not just read about it. This is a sample project: Salon Ruhrwelle is made up. The Telegram bot really works.
Role
Concept, art direction, design, bot and backend development
What I did
- Art direction: an honest look at what bot pages usually get wrong (robot mascots, chat bubbles everywhere, promises about AI), a moodboard with two palettes and three font pairs, then a style tile. The idea: two sides of one conversation. On the left a client writes at 23:14, on the right the salon’s book fills up at the same moment.
- A real Telegram bot: booking in free text or with buttons, a booking card, a reminder with “I’ll be there”, “Move” and “Cancel”, a waiting list that gets the freed slot. It answers only from the salon’s own data and passes everything else on. German, English and Ukrainian, picked from the phone’s language.
- A calendar inside Telegram (Mini App): service, day, time, done. It books through the same core as the chat, so the rules stay in one place, and the confirmation arrives in the chat too.
- Automations after the booking: the day before, the client gets a reminder with “I’ll be there”, “Move” and “Cancel”, and a cancellation hands the slot to the waiting list. The owner gets a card for every new, moved or cancelled booking and a summary at 7:00 with the day’s appointments and free hours. On the page a clock runs through four moments, the client’s phone on the left and the owner’s on the right. In the demo the bot shows you the owner’s view, because there is no owner.
- A live calendar on the page: book in Telegram and watch the demo salon’s day fill up on the site, without names.
- The same dialogues as a WhatsApp replica, honestly labelled, with Meta’s message prices for Germany and what changes from October 2026.
- Privacy built in under GDPR: the bot stores a chat id, first name, language and appointments, nothing else, and deletes demo data after 24 hours or at once with one command. Fonts are hosted on the site, no trackers.











Result
A working demo I can send to a salon owner as a link: she books a test appointment herself, gets the reminder two minutes later and sees on the page that the bot and the calendar are one system. Price on the page: from €300.
Built with
TypeScript, HTML, CSS · Cloudflare Workers, D1, Cron · Telegram Bot API, Mini App · Literata, IBM Plex