
В разработке
ArcaLuna — приложение таро и астрологии, которое собирает утро на одном экране «Сегодня»: карта дня, главный транзит к натальной карте и фаза Луны. Астрономия считается одним ядром на Kotlin Multiplatform для iPhone и Android, а интерфейс на каждой платформе родной: SwiftUI на iOS, Jetpack Compose на Android. Точность ядра сверена с Swiss Ephemeris на 50 эталонных картах. Данные рождения остаются на устройстве, аккаунтов нет. Пять языков.
/// Ключевые фичи
- Экран «Сегодня»: карта дня, главный транзит к натальной карте и фаза Луны
- Одно ядро на Kotlin Multiplatform считает планеты, дома, аспекты и расклады для iPhone и Android
- Точность сверена с Swiss Ephemeris: 50 эталонных карт, отклонение планет не больше 0,0051°
- Родной интерфейс на каждой платформе: SwiftUI на iPhone и iPad, Jetpack Compose на Android
- Натальная карта с домами Whole Sign и Placidus; без времени рождения карта строится без домов и асцендента, и приложение объясняет почему
- Три авторские колоды по 78 карт и бесплатная классическая колода Уэйта–Смит 1909 года
- Данные рождения остаются на устройстве: без аккаунтов и копий на сервере
- Пять языков: строки приложений и сайта берутся из одного источника
/// Скриншоты
О проекте
ArcaLuna собирает таро и астрологию в одно утро. На экране «Сегодня» три вещи: карта дня, главный транзит к натальной карте и фаза Луны. За минуту человек видит, что сегодня важно лично для него, а экран «Сегодня» бесплатный.
Это первый кросс-платформенный проект студии: приложения для iPhone, iPad и Android разрабатываются параллельно, вместе с сайтом arcaluna.pro. Приложение пока в разработке и выйдет в App Store и Google Play.
Одно ядро, родной интерфейс
Вся астрономия и логика живут в общем модуле на Kotlin Multiplatform: эфемериды, дома, аспекты, синастрия, расклады, модель контента и журнал. iOS получает ядро как XCFramework, Android — как обычный модуль.
Интерфейс общим не стал. На iPhone и iPad это SwiftUI, на Android — Jetpack Compose с Material 3 и адаптивной вёрсткой для складных телефонов. Общий интерфейс на Compose Multiplatform рассматривали и отклонили: по оценке он удлинял разработку на 30–50%.
Точность, которую можно проверить
Ядро построено на astronomy-engine, перенесённом в общий код Kotlin Multiplatform. Дома, аспекты и лунный узел написаны отдельно. Эталон — Swiss Ephemeris: 50 натальных карт, включая экватор, широты за полярным кругом, южное полушарие, даты до 1970 года и переходы на летнее время. Одни и те же фикстуры прогоняются на JVM, Android и симуляторе iOS:
- планеты — отклонение не больше 0,0051° (худший случай — Нептун);
- асцендент — 0,0001°, куспиды Placidus — 0,0001°;
- ретроградность — 500 из 500 совпадений, фазы Луны — в пределах 0,7 минуты.
Выше 66° широты Placidus не определён. Тогда приложение переключается на Whole Sign и говорит об этом. Без времени рождения не строятся ни асцендент, ни дома.
Приватность
Аккаунтов нет. Данные рождения, расклады и журнал хранятся на устройстве, серверных копий нет. В настройках есть экспорт всех данных в JSON и полное удаление. Данные друзей для совместимости остаются там же и никуда не передаются.