История о том, как одинокий UX/UI-дизайнер сделал Flutter приложение, прошёл огонь, воду, Drag’n Drop — и вышел в релиз.

Вступление

Этот рынок приложений боится меня. Я видел его истинное лицо: приложения-комбайны, экраны-свалки из кнопок, чекбоксов, календарей, виджетов и «умных» фич.

И когда сторы окончательно забьются гига-мега-чад-аппами с миллиардом «нужных» функций, когда пользователи, тонущие в пушах, баннерах, геймификации и когнитивном шуме интерфейсов, поднимут взгляд и спросят:
«А можно просто список дел?», а маркетологи скажут:
«Эх ретрограды. Вот — будущее. Привыкайте и наслаждайтесь»,
я посмотрю на них и отвечу: «НЕТ».

Приветствую. Меня зовут Иван.
Днём я обычный Head of Design в крупной компании: распределяю нагрузку команды, планирую занятость, отвечаю за стандарты, методологию и процессы, рисую интерфейсы, провожу исследования и всеми силами пытаюсь вывести корпоративный UX/UI на максимальный уровень.

Но по ночам, я надеваю трико, открываю Cursor, Codex и ChatGPT, чтобы реализовать давнюю мечту — сделать собственное идеальное приложение.


Предыстория

Год назад я впервые всерьёз решил: пора.
Пора сделать что-то своё — приложение, где юзабилити и юзероцентричность не маркетинговые ярлыки и ширма для прикрытия диктата инженеров, а реальный фундамент.

Но как быть если из навыков у меня была только база в UX/UI и базовое понимание HTML/CSS? Казалось: без команды это просто неподьёмно. Я нашёл разработчика на Flutter и менеджера, готового помочь организационно. Договорились на процент с будущих доходов. Все вдохновились и загорелись, это было похоже на начало маленького стартапа.

Идея была простой: минималистичный таск-трекер на каждый день, свободный от мусора и «передоза фичами». Основным аналогом/референсом я выбрал Any.do — давно им пользовался и точно понимал, что там хорошо, а что хотелось бы сделать иначе.

Манифест CognifyTasks

Чтобы зафиксировать позиционирование, я оформил для себя короткий манифест:

  1. Концентрация важнее фич.
    Каждая кнопка — решение, а не аттракцион. Любая фича проходит фильтр: «Ускоряет путь мысль → выполнение?»

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

  3. Честная монетизация.
    База бесплатна. Премиум — это ИИ-генерация задач (в планах на ближайший крупный апдейт).

  4. Приватность без сказок.
    Минимум сбора данных.

  5. Скорость и надёжность как религия.
    Идеальные FPS, мгновенные действия, офлайн-устойчивость.

  6. Кроссплатформенность без компромиссов.
    Android + Web. iOS в планах.

  7. Открытая разработка и быстрые фиксы.

  8. Доступность по умолчанию.

Когда макеты и сценарии были готовы, я передал всё команде… и стал ждать.

Неделя.
Вторая.
Третья.
Месяц.

Прогресс — ноль.

Так я усвоил первый урок:
работа за процент никому не интересна. Моя мечта — это только моя мечта.

Одинокий самурай начинает путь

Типа я. Жёсский такой и слегка отчаянный.
Типа я. Жёсский такой и слегка отчаянный.

Хип-хоп погромче и поехали. Я понял: если хочу, чтобы приложение существовало — придётся делать его самому. Но как?

Первое логичное решение — выучить язык программирования. Но с работой, подработками и семьёй это казалось невозможным.

Второе — лоу-код.
Я перебрал платформы и остановился на FlutterFlow: интерфейс приятный, логика с нодами понятная, а самое главное — Flutter идеален для кроссплатформенности. Казалось, что выбор сделан.

И сначала всё шло отлично. Я учился быстро, делал прототипы, смотрел гайды.
Пока не наступил он — Drag’n Drop.

После сотой попытки реализовать плавный DnD стало понятно:
я упёрся в потолок FlutterFlow.
Гайдов нет, документация поверхностная, тикет мой в их дискорд канале мёртв.
Это был конец плана Б.

Поиск решения

Я решил идти ва-банк и купил курс по Flutter/Dart на Udemy. И выяснил вторую истину:
Учить теорию — адски скучно. Учиться нужно на практике.

Но даже начав писать что-то вручную, я понимал, что это будет слишком долго. И тут снова всплыла история о Cursor — IDE с интегрированным ИИ.

Скачал. Открыл.
И через 20 минут у меня уже был первый движущийся прототип.

Восторг был настолько сильным, что я ушёл в многочасовой запой продуктивности — и к утру получил рабочую основу: задачи создавались, редактировались, меню открывалось, экраны переключались.

Но остались самые сложные блоки:

  1. Серверная часть, хостинг, веб.

  2. Авторизация.

  3. И конечно — Drag’n Drop.

Firebase, авторизация и первый настоящий тупик

Я выбрал Firebase — максимально простой вход.
Хостинг и веб-деплой заняли около часа.
Google-авторизация — 10 минут.

Но вход без пароля упёрся в загадочную проблему: ссылки из письма не открывались в приложении. Cursor ломал голову, я ломал голову…

И вот тут родился третий урок:

Для разных задач нужны разные инструменты.

Я упаковал проект в ChatGPT Projects — и впервые почувствовал мощь фокусированного анализа. ChatGPT раскопал баги, предложил цепочку исправлений, объяснил причину, и спустя 2–3 дня варианты заработали.

Drag’n Drop — мой личный криптонит

Гладкий DnD был главной фичей приложения — и главным адом разработки.

Cursor выдавал либо слишком грубые решения, либо корявые аналоги FlutterFlow.

Я полез в исследования и обнаружил четвёртый урок:

Сторонние библиотеки — это балдёж. Писать DnD вручную можно до старости.

Я наткнулся на ImplicitlyAnimatedReorderableList — и понял: вот оно.
Гладко, стабильно, красиво, идеально.
Пара часов доработок — и DnD заработал именно так, как я мечтал.

Идеальный метод

Дальше я несколько месяцев доводил приложение: тёмная/светлая тема, онбординг, статистика, поведение для edge-кейсов, оптимизации анимаций. Работал по вечерам и ночам.

Параллельно появился Codex. В интернете ругали, но я попробовал — и удивился: в ряде задач Codex давал точные решения быстрее, чем Cursor.

Так сформировался мой идеальный пайплайн:

  1. Груминг идеи в ChatGPT.
    Исследование, варианты, анализ решений других продуктов.

  2. ChatGPT пишет промт для Codex — без конкретного кода, только контекст и требования.

  3. Codex генерирует DIFF-патчи.

  4. Я внедряю их и прошу Codex поправить линтер-ошибки.

  5. При необходимости — тюнинг вручную с помощью Cursor.

Точность решения задач — около 80%.
Остальное — ручная магия и опыт.

Итог: маленькая мечта, большой путь

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

Это не просто таск-трекер.
Это — проект-инициация, переход на новый уровень самостоятельности и технологического мышления.

CognifyTasks сегодня:

  • полноценная Android-версия

  • готовая Web-версия

  • плавный и надёжный Drag’n Drop

  • авторизация Google + email-link

  • кроссплатформенность

  • чистый минималистичный UI

  • офлайн-устойчивость

  • высокая производительность

CognifyTasks завтра:

  • Desktop-режим

  • iOS-версия

  • ИИ-ассистент, который принимает текст/голос и генерирует задачи, подзадачи, таймеры, дедлайны

  • умная аналитика рутинных паттернов

  • открытая разработка, короткие спринты, быстрые фиксы

Я не знаю, станет ли приложение популярным.
Но я точно знаю: я сделал то, что год назад считал невозможным.
И если кто-то после этой истории тоже попробует реализовать свою идею — значит, эта статья писалась не зря.


Если заинтересовались:

Буду рад вашему фидбеку, комментариям и предложениям по улучшению CognifyTasks.

Приложение в Google Play:
https://play.google.com/store/apps/details?id=com.cognify.tasks

Сайт:
https://cognify-tasks.com/

Web-версия:
https://cognify-tasks.app/

Телеграм-канал с новостями и фидбеком:
https://t.me/cognifytasks

Комментарии (0)