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.