Skip to content

abitly-bot System Design

The authoritative architecture documentation for the Abitly Telegram bot (Python / aiogram 3) — for humans and AI agents alike.

The single source of truth for abitly-bot — a Telegram bot that helps Ukrainian university applicants monitor admission offers, scores, ranks, and open days. It is a behaviour-preserving rewrite of a retiring TypeScript/Telegraf bot. Diagrams are Mermaid as-code; decisions are captured as immutable ADRs.

Overview

What the bot does, who uses it, and the systems it talks to (C4 Context). Read →

Architecture

Containers, the layered design, and the per-update DI middleware pipeline (C4 Container/Component). Read →

Runtime flows

Step-by-step sequence diagrams: boot, update path, account linking, daily cron, fan-out. Read →

Decision Records

The why behind the design — long-polling, layered services, lazy="raise", TS parity, and more. Read →