fedorthinks
← Все проекты
В проде2026

Softpop — спокойное iOS-приложение, которое узнаёт, как ты расслабляешься

Нативное iOS-приложение, уже в App Store. Ты лопаешь мягкие парящие 3D-пузыри с вручную настроенной вибрацией и звуком — без очков, без таймера, без текста. А приложение тихо замечает, как ты это делаешь (темп, порядок, ровность, нажим), и превращает это в короткие честные наблюдения о твоём состоянии и привычках — в сравнении только с твоей собственной нормой. Весь анализ — на устройстве. Swift 6, SwiftUI, RealityKit, Core Haptics, StoreKit 2, Foundation Models на устройстве.

Открыть
Роль
Один — продукт, дизайн, разработка, тесты, выпуск в App Store
Стек
Swift 6 · SwiftUI · RealityKit · Core Haptics · AVAudioEngine · Core Motion · SQLite (GRDB) · StoreKit 2 · Foundation Models
Период
2026

Проблема

Люди берут телефон, чтобы успокоиться, и залипают в ленту — а она делает наоборот. Приложения-«антистрессы» приятны минуту, потом в них реклама, и их забывают. Дневники и трекеры настроения просят читать, печатать и думать — ровно то, чего уставший мозг делать не хочет.

Я хотел вещь, которую можно открыть без усилий, которая приятна в руке и при этом что-то даёт взамен.

Что делает Softpop

  • Один жест, ничего читать. Открываешь — пузыри уже там. Нажал, подержал, отпустил. Ни очков, ни уровней, ни серий, ни таймера, проиграть нельзя.
  • Ощущается физически. Настоящие 3D-пузыри плывут, сталкиваются, сплющиваются под пальцем и идут рябью, как вода. Вибрация и звук настроены под каждый пузырь; каждый хлопок — нота мягкого аккорда, поэтому звук успокаивает, а не возбуждает.
  • Семь миров. Стекло, желе, мыло, мрамор, дерево, металл и облака — у каждого свой вид, материал и инструмент.
  • Музыка из движения. В режиме песни пузыри, сталкиваясь, играют мелодию нота за нотой, а каждый хлопок добавляет подходящую ноту. Можно загрузить любой MIDI-файл.
  • Даёт что-то взамен. Приложение измеряет, как ты лопаешь — ритм, порядок, нажим, ровность, движение, — и через несколько сессий показывает короткие наблюдения вроде «Сегодня быстрее обычного», у каждого есть «откуда мы знаем?» и «это про тебя?».
  • Четыре из семи миров — стекло, желе, дерево и металл. У каждого свой материал, свет и инструмент; пузыри — настоящие 3D-объекты на RealityKit.

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

  • Мир желе. Отпущенный пузырь лопается на капли, с вибрацией и нотой под каждый пузырь — без очков, без таймера, проиграть нельзя.

  • Reflections: короткие наблюдения о том, как ты лопаешь, — всегда в сравнении только с твоей собственной нормой, с «откуда мы знаем?» и «это про тебя?».

  • Недельная карточка и календарь визитов. Всё считается на устройстве из твоих же сессий — бэкенда нет.

  • Softpop Plus — подписка через StoreKit 2 с бесплатным пробным периодом. Сцена остаётся бесплатной; Plus открывает всю историю, недельный обзор и отчёт о личности.

Где здесь инженерия

Честность заложена в устройство. Исследования о связи касаний и настроения реальны, но статистические, поэтому приложение никогда не ставит диагнозов. Каждое сравнение — с твоей собственной нормой, а не со средним по людям. Каждая фраза — наблюдение, и тесты проверяют формулировки по списку запрещённых слов: никакого «уровня стресса», никаких медицинских заявлений. Связь между тем, что ты делаешь, и тем, что говоришь, показывается, только когда она достаточно сильна в твоих собственных данных.

Приватность заложена в устройство. Все сырые касания и движения остаются на телефоне и удаляются через 30 дней. Бэкенда нет. Языковая модель на устройстве (Apple Foundation Models) может только перефразировать наблюдение по сводке признаков — она ничего не выводит сама, и есть запасной вариант на шаблонах.

Настоящая 3D-сцена, которую можно тестировать. Рендер — RealityKit; поверхность пузыря — меш, который каждый кадр пересчитывается из чистой функции ряби. Физика и логика жестов живут в пакете, который не импортирует RealityKit, поэтому поле, распознавание касаний и хлопки тестируются без экрана.

Чистая архитектура на Swift. Тринадцать маленьких Swift-пакетов с зависимостями в одну сторону: домен → приложение → инфраструктура (SQLite через GRDB, Core Haptics, звук, Core Motion, StoreKit 2) → интерфейс. Границы держит сам граф пакетов. Строгая конкурентность Swift 6, SwiftLint без замечаний, около 480 юнит-тестов плюс UI-тесты сценариев, CI с порогом покрытия, решения записаны в ADR.

Настоящая бизнес-модель. Сцена бесплатная. Softpop Plus (подписка StoreKit 2 с бесплатным пробным периодом) открывает всю историю, недельный обзор, календарь и проверенный опросник «Большая пятёрка» (Mini-IPIP). Английский и испанский.

Как это сделано

В одиночку и AI-нативно: сначала я написал концепцию продукта, исследование и архитектуру, а потом вёл Claude Code как слой реализации, сам отвечая за дизайн, тесты и планку качества. Первый коммит — 5 сентября 2026; App Review одобрил, и 30 сентября 2026 приложение вышло в App Store.

Это ещё и доказательство, что тот же инженерный стандарт переносится с веба и AI-бэкендов на нативные мобильные приложения. Следующая — Alwenna, она готовится к выпуску на iOS и Android.