Перейти к основному содержимому

📊 ulives vs LifeUp — почему мы переписали с нуля

LifeUp — пионерское приложение геймифицированной продуктивности, которое мы запустили в 2018 году, а ulives — его официальный духовный преемник, переписанный с нуля для мультиплатформенного будущего. Этот документ объясняет различия, причины переписывания и чего ожидать от обоих приложений дальше.


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

LifeUp (人升)ulives
ПлатформаТолько AndroidiOS · iPadOS · macOS · Android
ТехнологияNative Android (Java / Kotlin)KMP + SwiftUI / Jetpack Compose
Релиз20182025
ЦенообразованиеПлатная загрузка¹Бесплатная загрузка + Premium subscription
UIMaterial Design 2 + 3 (dual)Нативный дизайн платформы (SwiftUI / Compose)
Кроссплатформенная синхронизация данныхНе планируетсяУниверсальный формат данных на всех платформах
Онлайн-функцииМодуль World (базовый)Пока нет — планируется онлайн-библиотека ассетов
API / расширяемость✅ Open API + open-source SDK²❌ Пока нет (нужен мультиплатформенный дизайн)
Импорт данных LifeUp✅ Поддерживается
Экспорт данных✅ Полный экспорт✅ Полный экспорт

¹ Также доступен через Google Play Pass в отдельных регионах.
² Включает LifeUp Cloud, LifeUp SDK и LifeUp Desktop.


Почему переписали, а не обновили

1. Привязка к платформе

LifeUp полностью построен на Android-native технологиях (Java, затем Kotlin). Порт на iOS, HarmonyOS, desktop или web никогда не был реалистичен — кодовую базу нельзя было переиспользовать. Чтобы выйти за пределы Android, полная переработка была единственным путём.

2. Накопленный технический долг

Ранняя архитектура LifeUp делала прагматичные компромиссы ради скорости:

  • Слой базы данных: выбран для быстрого прототипирования, но стал узким местом производительности в масштабе
  • Миграции системы атрибутов: 6 фиксированных → настраиваемые 6 → полностью настраиваемый список с группировкой — каждая миграция накладывала сложность на старый код
  • Двойное сопровождение UI: мы по-прежнему поддерживаем Material 2 и Material 3, удваивая дизайн и QA для каждого изменения

Это реальные проблемы, но исправление на месте означало бы переписать большую часть приложения — с постоянным риском сломать данные пользователей.

3. Ограничения от ранних решений

LifeUp рос органично из обратной связи сообщества — сила, но она закрепила многие функции и UI-паттерны. Изменение на месте ломало бы данные, рабочие процессы или оба:

  • UI-стили вшиты — полная поддержка Material 2 и Material 3 одновременно; каждый экран в двух вариантах, визуальная переработка означает двойной дизайн, код и QA
  • Модель хранения повторяющихся задач — клоны экземпляров на каждое повторение, а не единая модель циклов; схема пронизывает историю, награды, статистику и экспорт
  • Gold Coins как отдельная система — монеты не просто предмет; отдельное хранилище, UI и API. Магазин, синтез и инвентарь построены вокруг плоской валюты
  • Встроенные правила наград (шаги → Strength XP, лайки → награды, фиксированные системные достижения) — ранние «правила приложения», не вписывающиеся в полностью настраиваемую философию
  • Разрозненные экраны истории — история задач, журналы монет, записи таймера и инвентарь на разных экранах с разными формами данных
  • Механика модуля World — ранний онлайн-эксперимент со своей серверной логикой; расширение потребовало бы переархитектуры затрат и моделей данных
  • Множество каналов входа — Google, email, телефон и др. накопились за годы; привязка аккаунтов, восстановление и перенос лицензий обросли вокруг каждого

Это не изолированные баги — годы реальных данных и привычек пользователей, вшитых в продукт. Рефакторинг по одному всё равно означает переписать большую часть приложения.

4. Мы не могли вычитать

У каждой функции LifeUp есть пользователи, которые на неё полагаются. Удаление или переработка на месте ломало бы чей-то рабочий процесс. Чистый старт дал свободу осознанно выбирать, что переносить.


Что приносит ulives

Новые функции (только ulives)

ФункцияОписание
Countdown DaysОтслеживание предстоящих дат и вех рядом с задачами
Multiple ProfilesПереключение между полностью отдельными настройками (например, «Работа» vs «Личное»)
Task CapsulesГруппировка задач в сворачиваемые капсулы для более чистой организации
Unified Activity TimelineОдна прокручиваемая лента всей истории — выполненные задачи, награды, таймеры и др.
Currency → Item SystemВалюта больше не отдельная концепция — монеты это предметы, предметы могут быть валютой
Focus ModesPomodoro с Live Activities (Dynamic Island), виджеты iOS
iPad & macOS SupportПолная адаптация для планшетов и настольных компьютеров
iCloud BackupБесшовное резервное копирование и восстановление через iCloud
App Icon SwitchingВыбор из нескольких иконок приложения на iOS
iOS WidgetsВиджеты домашнего экрана и экрана блокировки для быстрой проверки задач

Функции, которых пока нет в ulives

Эти функции LifeUp не появятся в ulives сразу. Возможно, позже вернём улучшенные версии:

  • ATM (симуляция сложных процентов)
  • Таймеры обратного отсчёта предметов
  • Системные достижения и встроенные награды
  • Маппинг шагов → награды атрибутов
  • Маппинг лайков → награды

Преимущества LifeUp, которые сохраняются

Несмотря на возраст, LifeUp силён в нескольких областях:

ПреимуществоПодробности
Стабильность AndroidГоды проверки в реальных условиях и полировки на платформе
Smart ListsПродвинутая фильтрация и группировка задач
Open API ecosystemREST API для программного запроса и изменения данных приложения
Open-source ecosystemLifeUp Cloud (самостоятельный sync), LifeUp SDK (Java/Kotlin), LifeUp Desktop (кроссплатформенный companion)
Automation integrationРабота с Tasker, пользовательскими скриптами, AI-агентами и другими инструментами автоматизации
Ниже ценаРазовая покупка (без подписки) в большинстве регионов
Зрелый набор функцийВсё отполировано годами реального использования

API-экосистема в частности даёт LifeUp слой, удобный для разработчиков, которому ulives пока не соответствует. Пользователи построили сложные рабочие процессы — автоматическое отслеживание привычек с Tasker, AI-генерация задач, пользовательские панели — комбинируя API LifeUp с другими инструментами.


Цены и бизнес-модель

LifeUp и ulives — отдельные приложения с отдельными магазинами, покупками, лицензиями и данными. Импорт резервной копии LifeUp в ulives не переносит лицензию LifeUp.

Почему нельзя одну покупку на оба

LifeUp всегда строился на чистых Android-native технологиях. Будучи ограниченным одной платформой, цена LifeUp намеренно была низкой — нереалистично, чтобы одна покупка выкупила весь будущий портфель разработчика.

В Google Play пожизненное членство LifeUp начиналось примерно с 1 USD и со временем было скорректировано до примерно 4 USD сегодня — всё ещё крайне низкая цена (многие аналоги стартуют с 30–40+ USD за lifetime или повышают цены каждый месяц). На отечественных Android-каналах постоянное членство выросло примерно с ¥6 до ¥29,8 за восемь лет после введения членства. Этих доходов недостаточно для полноценной разработки одного LifeUp, не говоря уже о кроссплатформенном сопровождении и эксплуатации ulives.

ulives — полная переработка с нуля на кроссплатформенных (KMP) технологиях, созданная другой командой на новом стеке — ulives не существовал, когда устанавливались цены LifeUp. Цена отражает затраты на разработку, не полностью объединённую команду и долгосрочную поддерживаемость на платформах.

Мы могли бы сделать два членства взаимозаменяемыми. Это была бы продажа в комплекте: любой, кто купил дешёвый пожизненный уровень LifeUp, получил бы ulives навсегда. Честный способ предложить такой комплект — существенно поднять цену LifeUp с самого начала, чтобы одна покупка покрывала оба приложения. Мы сознательно этого не сделали — LifeUp сохраняет цены только для Android, ulives продаётся отдельно. Оба приложения предлагают пожизненное членство по ценам значительно ниже большинства аналогов — но они решают разные задачи и сегодня не могут делить права доступа.

Платящие участники LifeUp ничего не теряют. Невзаимозаменяемость с ulives не откатывает преимущества LifeUp. С момента введения членства LifeUp прошёл через восемь лет обслуживания и обновлений функций; существующие платящие пользователи продолжат получать свои права, и мы по-прежнему привержены разработке LifeUp — включая существенные недавние релизы, такие как MCP‑сервер.

ulives спроектирован так, что Premium Access в итоге будет работать на iOS, Android и HarmonyOS с общими данными и преимуществами. Пока нет сервера или системы аккаунтов, права зависят от проверки in-app purchase на каждой платформе. Ранняя кроссплатформенная активация может потребовать обращения за кодами для конкретных платформ; планируем серверное управление аккаунтами, когда будем готовы.

LifeUp в Google Play: платная загрузка

В Google Play LifeUp использует платную загрузку плюс относительно недорогое пожизненное членство. Двойной барьер ограничивает число пробующих, снижает обратную связь и темп обновлений — и в итоге ухудшает опыт существующих участников.

LifeUp также несёт серверные затраты, большую базу пожизненных участников с низким порогом входа и много ручных запросов на перенос лицензий — включая пользователей годами назад, которым нужна помощь с аккаунтами через множество способов входа. Эти операционные затраты ограничивают реинвестиции.

Не только код: поддержка, которая отнимает время разработки

Мы — инди-команда, разрабатывающая в свободное время, а не компания с отделом поддержки. Каждый час на письма, переносы лицензий или разовые переговоры — это час не на исправление багов и выпуск функций для всех, включая платящих участников.

Скриншоты ниже настоящие (личные данные скрыты). Примерно месяц один и тот же пользователь отправлял много писем на наш адрес поддержки LifeUp — неоднократно прося большие скидки или бесплатный доступ, детальные сравнения с Habitica, Do It Now, Skillion и позже ulives, и требуя доказать, что приложение стоит покупки, прежде чем платить. Мы ответили несколько раз, но объём и переписка быстро превысили то, что мы могли выдержать параллельно с разработкой, и мы прекратили общение.

Входящие поддержки LifeUp: повторяющиеся запросы скидок и сравнений за месяц

Когда ulives Android получил первый публичный отзыв в магазине, мы узнали то же имя — одна звезда на ранней alpha-сборке с комментарием « Ne marche pas bien ! » (« Работает плохо! »).

ulives Android: первый отзыв в магазине на ранней alpha-сборке

Мы делимся этим не чтобы кого-то выставить. Бюджетные ограничения реальны, и мы понимаем разочарование. Но такой паттерн — ожидать от двух человек в свободное время постоянных личных консультаций, индивидуальных цен и « доказательства перед покупкой » — напрямую конкурирует с временем разработки, которое нужно и ulives, и LifeUp. Поэтому важны устойчивые цены и более чёткие границы: чтобы продолжать строить продукт, а не тонуть в неустойчивой нагрузке поддержки.

Инвестиции в разработку ulives

Создание ulives потребило значительного времени и ресурсов. Почти каждая функция переработана из пользовательской обратной связи перед интеграцией — например, Smart Lists вышли сразу со встроенными списками, «My Day» и пользовательскими умными списками. Текущие ИИ-инструменты, полировка и работа с App Store добавляют затрат. Делить ценообразование или членство LifeUp для ulives невозможно.

Некоторые спрашивают, почему ulives не может делить членство LifeUp — включая вопросы о Premium-only функциях вроде автоматической разблокировки достижений. ulives и LifeUp — отдельные продукты с отдельным ценообразованием. Premium-функции финансируют кроссплатформенную разработку и долгосрочное сопровождение.

Нездоровый цикл, от которого мы уходим

В Google Play и других зарубежных магазинах LifeUp всегда использовал платную загрузку плюс относительно недорогое пожизненное членство — в этих регионах нет модели бесплатной загрузки с «в основном бесплатными функциями». Такую комбинацию сложно поддерживать долгосрочно:

  • Платная загрузка снижает конверсию — меньше людей пробуют приложение, что означает более медленный рост, меньше обратной связи и меньший импульс для обновлений
  • Недорогое пожизненное членство — после покупки повторяющийся доход ограничен, что затрудняет финансирование серверов, поддержки и текущей разработки
  • Результат: недостаточный доход → меньше сопровождения и более медленные обновления → ухудшение опыта для всех, включая платящих участников

ulives намеренно спроектирован так, чтобы разорвать этот цикл. Уровни членства, ограничения функций и кроссплатформенные планы в первую очередь рассчитаны на долгосрочную поддерживаемость — чтобы доход продолжал финансировать разработку, автотесты, адаптацию платформ и поддержку, а не повторял неустойчивый зарубежный путь LifeUp. Здоровым продуктам нужны разумные цены, разумная ценность для участников, разумный доход разработчика и реинвестиции, поддерживающие рост.

ulives: долгосрочная поддерживаемость

Помимо ценообразования, ulives спроектирован для устойчивости:

  • Greenfield-архитектура на KMP — основная бизнес-логика, модели данных и правила создаются один раз и используются на iOS, Android и HarmonyOS с нативным UI на каждой платформе. Это снижает дублирование инженерной работы по сравнению с поддержкой отдельных нативных кодовых баз на каждой платформе
  • Меньшая постоянная операционная нагрузка — LifeUp также несёт расходы на серверы, ручные переносы лицензий, восстановление аккаунтов через множество способов входа и другую ops-работу, которая становится долгосрочным бременем. ulives спроектирован так, чтобы по возможности не повторять эти накладные расходы (права доступа сегодня по-прежнему зависят от проверки in-app purchase на каждой платформе; серверное управление аккаунтами запланировано, когда продукт будет готов)

Функции, возвращающиеся в LifeUp

Разработка ulives также улучшила LifeUp. Примеры: объединение магазина, склада и систем синтеза, расширение ограничений покупки/использования.


Как будут развиваться оба приложения

LifeUp: стабильное сопровождение

Мы привержены поддержке LifeUp в обозримом будущем. Однако:

  • Разработка новых функций ограничена — только Android, совместимость с legacy без полноценных автотестов и накопленный долг (двойное сопровождение Material 2/3, компромиссы производительности БД)
  • Разрабатываем осторожно и дольше проверяем, фокус на исправлениях багов, производительности, стабильности и постепенных улучшениях
  • Не планируем добавлять крупные новые модули функций
  • Паритет существующих функций между темами Material 2 и Material 3 сохранится
  • Open-source экосистема (Cloud, SDK, Desktop) останется доступной

ulives: смелые инновации

ulives — куда мы инвестируем в будущее:

  • Обширные автотесты позволяют менять логику с уверенностью
  • Общий слой данных KMP — изменения модели данных переиспользуются на iOS, Android, HarmonyOS и потенциальных настольных платформах с минимальным дублированием
  • Нативный UI на каждую платформу — SwiftUI на Apple, Jetpack Compose на Android — для быстрой итерации и платформенных функций (например, Live Activities)
  • Онлайн-функции — планируем онлайн-библиотеки ассетов, общие шаблоны и другие функции сообщества, невозможные в архитектуре LifeUp

Данные: импорт, экспорт и непрерывность

ВозможностьLifeUpulives
Экспорт полных данных✅ (DB + media files)✅ (DB + media files)
Импорт данных LifeUp
Синхронизация между приложениямиЗапланировано (тот же формат данных)

Если вы пользователь LifeUp, переходящий на ulives, можно импортировать резервную копию LifeUp и продолжить с того места. Оба приложения экспортируют полные снимки — включая базу данных и медиа-вложения — данные не заперты внутри.


Какое приложение выбрать?

Ваша ситуацияРекомендация
Пользователь Android, нужен API / автоматизацияLifeUp — зрелый и функционально богатый
Пользователь Android, нужны последние функцииulives в Google Play — уже доступен, продолжается доработка; или LifeUp, если нужна зрелая автоматизация/API
Пользователь iOS / iPad / Maculives — единственный вариант, созданный для Apple
Мультиплатформенный пользовательulives — данные будут синхронизироваться на всех устройствах
Пользователь LifeUp, «заперт» на Androidulives — импортируйте данные и получите кроссплатформенную свободу
Только Android, нужна самая низкая цена пожизненного доступаLifeUp
Мультиплатформенный пользователь или пользователь Appleulives — отдельная покупка, долгосрочный кроссплатформенный Premium в планах
Нужна бесплатная пробная версия + Premium unlockulives

Итог

LifeUp был — и остаётся — выдающимся приложением, которое первым принесло геймифицированную продуктивность на мобильные устройства. Но архитектура только для Android, накопленный технический долг и ограничения унаследованного дизайна сделали невозможной эволюцию в современный мультиплатформенный продукт.

ulives — наш ответ: переработка с чистого листа, сохраняющая душу LifeUp (глубокая настройка, RPG-прогрессия, геймификация, управляемая пользователем), открывающая iOS, iPadOS, macOS и Android — всё на одной кодовой базе и одном формате данных.

Оба приложения продолжат существовать. LifeUp получает стабильность; ulives — инновации.