wt c4c8f7a7cb
Android CI / Build and Test (push) Failing after 25m47s
iOS CI / Build and Test SwiftUI App (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build Unsigned iOS IPA (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build macOS ZIP (push) Canceled after 0s
updated .gitignore and fix added cmd dir
2026-09-20 02:37:31 +07:00
2026-09-08 13:36:43 +07:00
2026-07-21 00:14:29 +07:00
2026-09-08 13:36:43 +07:00
2026-09-08 13:36:43 +07:00

Balance — все платформы

Balance — приложение для учёта личных финансов с нативными клиентами для iOS, macOS, watchOS, Android и встроенным web-интерфейсом, а также self-hosted сервер синхронизации на Go. В архиве находится монорепозиторий из трёх независимо собираемых проектов.

Папка Назначение Стек
Balance/ iOS 17+, macOS 14+ и watchOS 10+ SwiftUI + SwiftData
BalanceAndroid/ Android 8.0+ Kotlin + Jetpack Compose + Room
BalanceServer/ Go-сервер авторизации, синхронизации и встроенный web-клиент Go + SQLite

Все пять клиентов — iOS, macOS, watchOS, Android и web — используют одну модель данных и один протокол сервера: операции, пользовательские категории, бюджеты, удаления, регистрация, вход, refresh-токены и постраничная двусторонняя синхронизация. Web-интерфейс открывается по адресу запущенного сервера и не требует отдельной установки.

Быстрый старт

  1. Поднять сервер — см. BalanceServer/README.md (Docker или локальная сборка Go-бинарника).
  2. Открыть Apple-проект — open Balance/Balance.xcodeproj, см. Balance/README.md.
  3. Собрать Android-приложение — cd BalanceAndroid && ./gradlew assembleDebug, см. BalanceAndroid/README.md.
  4. В любом клиенте укажите адрес запущенного сервера в настройках аккаунта, чтобы включить синхронизацию между устройствами.

Документация

Документация организована на двух уровнях:

  • Корневой уровень (docs/) — то, что относится ко всем платформам сразу: как устроена система в целом, единый протокол синхронизации, сквозная модель данных и требования безопасности.
  • Уровень подпроекта (Balance/docs/, BalanceAndroid/docs/, BalanceServer/docs/) — детали конкретной платформы: код, схемы, сборка, деплой.
Документ Описание
AGENTS.md Правила для AI-агентов и разработчиков, работающих во всём репозитории
docs/ARCHITECTURE.md Как связаны клиенты и сервер, общая схема системы
docs/SYNC_PROTOCOL.md Единый протокол синхронизации между всеми клиентами и сервером
docs/DATA_MODEL.md Сопоставление доменных сущностей между платформами
docs/SECURITY.md Сквозные требования безопасности (токены, HTTPS, хранение секретов)
docs/DEVELOPMENT.md Как собрать, запустить и протестировать все три проекта

Документация по подпроектам

Структура репозитория

Balance/
├── AGENTS.md              # общие правила для агентов по всему репо
├── README.md               # этот файл
├── docs/                   # сводная документация по всем платформам
├── Balance/                 # Xcode-проект: iOS + macOS + watchOS
├── BalanceAndroid/          # Android (Gradle/Kotlin)
└── BalanceServer/           # Go-сервер + встроенный web-клиент
S
Description
Personal budget management app
Readme
2.3 MiB
4.1.1
Latest
2026-07-14 16:21:59 +07:00
Languages
Swift 46.4%
Kotlin 23.2%
JavaScript 13.5%
Go 8.8%
CSS 6.7%
Other 1.4%