37 lines
2.0 KiB
Markdown
37 lines
2.0 KiB
Markdown
# FUJ Management System
|
|
|
|
Welcome to the **FUJ Management System**, a streamlined solution for managing Ultimate Frisbee club finances, attendance, and member payments. This system automates the tedious parts of club management, keeping your ledger clean and your reconciliation painless.
|
|
|
|
## 🚀 Mission
|
|
|
|
The project's goal is to minimize manual entry and potential human error in club management by:
|
|
1. **Automating Bank Synchronization**: Periodically fetching transactions from Fio bank.
|
|
2. **Smart Inference**: Using heuristics to match bank transactions to members and payment periods.
|
|
3. **Visual Reconciliation**: Providing a clear, real-time web dashboard for managers to track who has paid and who is in debt.
|
|
|
|
## ✨ Key Features
|
|
|
|
- **Seamless Bank Integration**: Synchronize transactions directly from the Fio bank API into a Google Spreadsheet.
|
|
- **Intelligent Matching**: Automatic detection of member names and payment periods from transaction messages using diacritic-insensitive Czech text processing.
|
|
- **Dynamic Dashboard**: A Flask-powered web interface displaying monthly fees, payment status (OK, Partial, Unpaid), and total balances.
|
|
- **Manual Overrides**: Support for fee exceptions and manual payment matching when automation needs a human touch.
|
|
- **QR Payment Generation**: Integrated QR code generation to make paying outstanding fees trivial for members.
|
|
|
|
## 🛠 Tech Stack
|
|
|
|
- **Backend**: Python 3.12+ (managed with `uv`)
|
|
- **Web Framework**: Flask with Jinja2 templates
|
|
- **Data Storage**: Google Sheets (used as a collaborative database)
|
|
- **APIs**: Fio Bank API, Google Sheets API v4
|
|
- **Containerization**: Docker / OCI Images
|
|
- **Automation**: `Makefile` based workflow
|
|
|
|
---
|
|
|
|
## 📂 Documentation Guide
|
|
|
|
- [Architecture](architecture.md): High-level system design and data flow.
|
|
- [User Guide](user-guide.md): How to operate the system as a club manager.
|
|
- [Support Scripts](scripts.md): Detailed reference for CLI tools.
|
|
- [Deployment](deployment.md): Technical setup and infrastructure instructions.
|