|
1 | | -# 📄 InvoiceFlowBot Documentation |
| 1 | +<img src="https://capsule-render.vercel.app/api?type=waving&color=gradient&customColorList=6,11,20&height=150§ion=header&text=Documentation&fontSize=50&animation=fadeIn&fontAlignY=38&desc=InvoiceFlowBot%20•%20Complete%20Guide&descAlignY=60&descSize=18"/> |
| 2 | + |
| 3 | +<div align="center"> |
| 4 | + |
| 5 | +<p align="center"> |
| 6 | + <img src="https://readme-typing-svg.demolab.com?font=Fira+Code&size=18&duration=3000&pause=1000¢er=true&vCenter=true&width=500&lines=Automated+Invoice+Processing;Telegram+%2B+OCR+%2B+SQLite;Complete+Project+Documentation" alt="Typing SVG" /> |
| 7 | +</p> |
| 8 | + |
| 9 | +</div> |
| 10 | + |
| 11 | +## 📋 About |
2 | 12 |
|
3 | 13 | InvoiceFlowBot is a Telegram assistant that automates invoice capture for finance teams. Users forward PDFs or photos, the bot extracts a structured draft via Mindee, lets the operator review and edit details, and persists confirmed invoices to SQLite. |
4 | 14 |
|
5 | | -The workflow removes repetitive manual entry. Accountants receive a ready draft, adjust header fields or line items, add comments, and store the final version with a single command. Historical queries stay available in the same bot chat. |
6 | | - |
7 | | -## 📚 Documentation map |
8 | | - |
9 | | -- 📖 [System overview](overview.md) — architecture, components, and the data path from Telegram to the database |
10 | | -- 🏗️ [Architecture](architecture.md) — high level architecture diagrams and component interactions |
11 | | -- 💻 [Local setup](setup-local.md) — run without Docker, configure the virtual environment and `.env` |
12 | | -- 🐳 [Docker setup](setup-docker.md) — container deployment, volume mounting, and upgrades |
13 | | -- ⚙️ [Configuration](config.md) — every environment variable and how `config.py` reads it |
14 | | -- 🗄️ [Database](database.md) — SQLite schema, entities, and backup tips |
15 | | -- 📝 [Logging](logging.md) — log files, rotation, and recommended levels |
16 | | -- 📖 [Usage](usage.md) — end-user flow, commands, and inline buttons |
17 | | -- 🧪 [Tests](tests.md) — pytest instructions and coverage areas |
18 | | -- 🔧 [Troubleshooting](troubleshooting.md) — quick fixes for common issues |
19 | | -- 📸 [Screenshots](screenshots.md) — visual references for the most common bot flows |
20 | | -- 📋 [Architecture decisions (ADR)](../adr/0001-mindee-as-primary-ocr-provider.md) — design decision records for key technology choices |
| 15 | +> [!NOTE] |
| 16 | +> The workflow removes repetitive manual entry. Accountants receive a ready draft, adjust header fields or line items, add comments, and store the final version with a single command. |
| 17 | +
|
| 18 | +## 📚 Documentation Map |
| 19 | + |
| 20 | +<div align="center"> |
| 21 | + |
| 22 | +### 🚀 Quick Start |
| 23 | + |
| 24 | +<table> |
| 25 | +<tr> |
| 26 | +<td width="50%" align="center"> |
| 27 | +<img src="https://img.icons8.com/fluency/96/000000/laptop.png" width="64"/> |
| 28 | +<br/> |
| 29 | +<h4>💻 <a href="setup-local.md">Local Setup</a></h4> |
| 30 | +<sub>Python environment and dependencies</sub> |
| 31 | +</td> |
| 32 | +<td width="50%" align="center"> |
| 33 | +<img src="https://img.icons8.com/fluency/96/000000/docker.png" width="64"/> |
| 34 | +<br/> |
| 35 | +<h4>🐳 <a href="setup-docker.md">Docker Setup</a></h4> |
| 36 | +<sub>Containerization and deployment</sub> |
| 37 | +</td> |
| 38 | +</tr> |
| 39 | +</table> |
| 40 | + |
| 41 | +### 📖 Main Documentation |
| 42 | + |
| 43 | +</div> |
| 44 | + |
| 45 | +| Section | Description | |
| 46 | +|---------|-------------| |
| 47 | +| 📖 [System Overview](overview.md) | Architecture, components, data flow | |
| 48 | +| 🏗️ [Architecture](architecture.md) | Diagrams and component interactions | |
| 49 | +| ⚙️ [Configuration](config.md) | Environment variables and settings | |
| 50 | +| 🗄️ [Database](database.md) | SQLite schema and migrations | |
| 51 | +| 📝 [Logging](logging.md) | Log files and levels | |
| 52 | +| 📖 [Usage](usage.md) | Commands and interactive buttons | |
| 53 | +| 🧪 [Tests](tests.md) | Pytest and code coverage | |
| 54 | +| 👨💻 [Development](development.md) | Developer guide | |
| 55 | +| 🔧 [Troubleshooting](troubleshooting.md) | Common issues and solutions | |
| 56 | +| 📸 [Screenshots](screenshots.md) | Visual examples | |
| 57 | + |
| 58 | +<details> |
| 59 | +<summary><b>📋 Architecture Decision Records (ADR)</b></summary> |
| 60 | + |
| 61 | +Documented decisions for key technologies: |
| 62 | + |
| 63 | +- [ADR-0001: Mindee as primary OCR provider](../adr/0001-mindee-as-primary-ocr-provider.md) |
| 64 | +- [ADR-0002: SQLite as primary storage](../adr/0002-sqlite-as-primary-storage.md) |
| 65 | +- [ADR-0003: Aiogram 3 as Telegram framework](../adr/0003-aiogram3-as-telegram-framework.md) |
| 66 | + |
| 67 | +</details> |
| 68 | + |
| 69 | +--- |
| 70 | + |
| 71 | +<div align="center"> |
| 72 | + |
| 73 | +<img src="https://capsule-render.vercel.app/api?type=waving&color=gradient&height=100§ion=footer"/> |
| 74 | + |
| 75 | +</div> |
0 commit comments