telegram-finance-bot
A personal finance Telegram bot, designed as both a working product and an SA portfolio piece. Source code is private; this section publishes the design, decisions, and plans.
Project goals
Section titled “Project goals”- Stage 1 (MVP-1): personal use — single user + close circle.
- Stage 2: small multi-tenant for friends/family.
- Stage 3 (long horizon): paid SaaS-style product.
Architecture is designed for Stage 3 in SRS/ADR; implementation iterates from MVP-1.
Sections
Section titled “Sections”- Architecture Decision Records — Michael-Nygard-style ADRs covering the load-bearing choices.
- Design — system-level architecture documents.
- Plans — implementation plans.
- Templates (proposed) — lean-format SA templates being evaluated for this project.
Stack snapshot (Stage 1 target)
Section titled “Stack snapshot (Stage 1 target)”- Bot framework: aiogram 3.x (async)
- DB: PostgreSQL for users/accounts, TigerBeetle for the transaction ledger
- Money: Decimal everywhere; multi-currency from day one
- Deployment: single VPS, docker-compose; long-polling (no public webhook)