Europe/Istanbul
All Projects

Telegram Bot — From Simple Commands to Mini-Apps

I build Telegram bots for customer support, forms, reports, notifications, and lightweight mini-apps — with webhooks, persistence, and admin tooling.
August 8, 2025
Python
Aiogram
FastAPI
Webhooks
Redis
PostgreSQL
Docker
  • Utility bots: quick commands, reminders, scheduled reports.
  • Operations & support: intake forms, ticket routing, moderation tools.
  • Business flows: payments, order tracking, approvals, mini-apps (WebApp).
  • Aiogram for handlers + FSM for conversational flows.
  • FastAPI webhooks behind reverse proxy; horizontal-friendly.
  • Redis for sessions/rate limits; PostgreSQL for persistent data.
  • Docker for deploys; structured logging & metrics.
from aiogram import Router, F
from aiogram.types import Message
from app.services import orders

router = Router()

@router.message(F.text.startswith("/status"))
async def status_handler(msg: Message):
  order_id = msg.text.split(maxsplit=1)[-1]
  data = await orders.get_status(order_id)
  await msg.answer(f"Order {order_id}: {data.status} • ETA {data.eta}")
Reliability & security
  • Webhook signature checks, per-user rate limiting, admin roles, audit log.
  • Graceful restarts with job queues, idempotent handlers, retries with backoff.
Skills demonstrated: event-driven Python, API design, state machines, background jobs, production deploys.