Finance Control
Finance Control — настольное приложение для персонального учёта финансов и подписок. Проект разработан на Python с использованием CustomTkinter, SQLite и Matplotlib.
Основные возможности финальной версии
- учёт счетов, карт, наличных и электронных кошельков;
- категории доходов и расходов;
- добавление и удаление операций с автоматическим изменением баланса;
- поиск и фильтрация операций;
- экспорт истории операций в CSV;
- контроль подписок, переключение статуса «Активна / Пауза»;
- бюджеты и лимиты по расходным категориям с прогресс-барами;
- главная панель со сводкой, ближайшими списаниями, последними операциями и предупреждениями по лимитам;
- аналитика и текстовый отчёт с диаграммой расходов;
- экспорт отчёта в TXT;
- сохранение выбранной темы интерфейса;
- защита от быстрых повторных нажатий на кнопки;
- локальная SQLite-база, создаётся автоматически при первом запуске.
Запуск на пустом компьютере
- Установить Python 3.11 или новее.
- Скачать репозиторий с Gitea.
- Открыть терминал в папке проекта.
- Создать виртуальное окружение:
python -m venv .venv
- Активировать окружение:
Windows:
.venv\Scripts\activate
Linux / macOS:
source .venv/bin/activate
- Установить зависимости:
pip install -r requirements.txt
- Запустить приложение:
python main.py
При первом запуске файл finance_manager.db будет создан автоматически.
Быстрый запуск Windows
Можно запустить файл:
run.bat
Он создаст виртуальное окружение, установит зависимости и откроет приложение.
Структура проекта
main.py
app/
config.py
database.py
services/
finance_service.py
utils/
formatters.py
validators.py
ui/
base_frame.py
main_window.py
dashboard_frame.py
accounts_frame.py
categories_frame.py
transactions_frame.py
subscriptions_frame.py
budgets_frame.py
reports_frame.py
requirements.txt
Проверка кода
Для быстрой проверки синтаксиса:
python -m py_compile main.py app/*.py app/ui/*.py app/services/*.py app/utils/*.py
Description
Languages
Python
99.3%
Batchfile
0.5%
Shell
0.2%