Files

2.9 KiB
Raw Permalink Blame History

Функциональная документация

Обзор

Balance Android — локально-first приложение личных финансов.

Основные функции:

  • доходы;
  • расходы;
  • категории;
  • бюджеты;
  • аналитика;
  • корректировка баланса;
  • server sync;
  • тёмная/светлая тема;
  • несколько валют.

Обзор

Показывает:

  • общий баланс;
  • доходы текущего месяца;
  • расходы текущего месяца;
  • расходы по категориям;
  • последние операции.

Операции

Поддерживаются:

  • добавление;
  • редактирование;
  • удаление;
  • поиск;
  • фильтрация по income/expense;
  • дата;
  • сумма;
  • категория;
  • заметка.

Корректировка

Пользователь задаёт целевой фактический баланс.

Приложение вычисляет:

difference = target - current

и создаёт специальную transaction с isBalanceAdjustment=true.

Корректировка меняет общий баланс, но не включается в периодическую аналитику.

Аналитика

Периоды:

  • месяц;
  • 3 месяца;
  • 12 месяцев.

Показываются:

  • доходы;
  • расходы;
  • результат;
  • savings rate;
  • структура расходов по категориям.

Бюджеты

Можно задать месячный лимит для категории.

Бюджет хранится отдельно и синхронизируется с сервером.

Категории

Можно создавать и редактировать пользовательские категории.

Поддерживаются:

  • имя;
  • тип;
  • иконка;
  • emoji;
  • цвет.

Есть 50 вариантов иконок, 30 готовых emoji и палитра из 24 цветов согласно текущему UI.

Настройки

  • RUB;
  • EUR;
  • USD;
  • SEK;
  • system/light/dark;
  • server URL;
  • регистрация/login/logout;
  • ручная sync;
  • reset sync.

Offline-first

Все основные операции выполняются локально через Room. Сервер нужен только для авторизации и межустройственной синхронизации.

Background sync

При наличии аккаунта и server URL WorkManager пытается синхронизировать данные примерно каждые 15 минут при наличии сети.

Точное время зависит от Android WorkManager и системных ограничений батареи/фоновой работы.