За кулисами платформы · Инженерия

Четыре приложения. Один бэкенд.
Один инженер.

Nibblify — это полноценная платформа доставки еды: приложение для клиентов, для ресторанов, для курьеров, операционная консоль, бэкенд и сайт на 10 языках. Всё это построил один человек вместе с передовыми моделями ИИ. Мы называем этот метод vibe engineering.

300K+
Строк написано вручную
2,456
Коммитов с ноября 2025
6
Репозиториев, одна платформа
1
Инженер за клавиатурой

Метод

Что такое vibe engineering

Vibe engineering — это не «пусть ИИ напишет, а там посмотрим». Это разделение труда: человек отвечает за замысел, архитектуру и последнее слово; модели — за набор текста, память и первый черновик; а сам репозиторий — за доказательство: тесты, валидаторы и проверки при сборке, которые громко падают, как только что-то уходит в сторону.

Направление задаёт человек

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

Первый черновик пишут модели

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

Доказательство даёт репозиторий

Ничего не выпускается «на ощущениях». По коду проходят 296 тестовых файлов, наборы тестов правил безопасности, проверка ключей локализации, аудит SEO-метаданных и валидатор взаимности ссылок. Когда написанный ИИ код неверен, об этом говорит машина — задолго до пользователя.

Контекст записан

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


Соавторы

Три модели — три роли

Каждую модель применяли там, где она сильнее всего, — и проверяли остальными там, где нет.

ChatGPT

Формирование продукта

Продуктовое мышление, нейминг, тексты интерфейса и долгие споры о том, чем функция должна быть на самом деле. Большинство экранов Nibblify существовали как разговор задолго до того, как стали кодом.

Gemini

Исследование и второе мнение

Широкое исследование API, правил платформ и политик магазинов приложений, а также независимый разбор дизайна и кода, созданных другими моделями. Когда две модели расходились, само расхождение и было полезным сигналом.

Claude Code

Агент, который строит

Работает прямо внутри репозиториев: читает всю кодовую базу, пишет и рефакторит сотни файлов, гоняет тесты, чинит то, что сломал, и коммитит. Отсюда взялась большая часть из 300 000 строк.


Стек

На чём это действительно написано

Dart и Flutter

≈ 173 000 строк · 650 файлов

Все четыре приложения используют один язык и один UI-тулкит, поэтому iOS, Android и веб выходят из единой кодовой базы. Flutter с Riverpod, Provider и go_router, на Dart 3.10.

JavaScript в Cloud Functions

≈ 25 500 строк · 238 функций

Node.js в Firebase Cloud Functions отвечает за заказы, выплаты, назначение курьеров, шифрование персональных данных AES-256, экспорт по GDPR, push-уведомления и весь админский API.

Firebase и Firestore

1 119 строк правил · 47 коллекций

Auth, Firestore, Storage, Messaging, Remote Config, App Check, Crashlytics и Analytics — с написанными вручную правилами безопасности для каждой коллекции. База данных — это контракт между всеми четырьмя приложениями.

HTML, CSS и собственная сборка

≈ 19 300 строк · 200 статических страниц

Этот сайт — написанные вручную HTML и CSS с Tailwind, собираемые Node-сборкой, которая рендерит каждую страницу на 10 языках и сама генерирует теги hreflang, структурированные данные, карту сайта и варианты изображений.


Цифры

Каждая часть — посчитана

Замер от 2 августа 2026 года. Зависимости и сгенерированные машиной файлы не учтены — это строки, действительно написанные для Nibblify.

Nibblify Food

Dart · 69 600 строк · 269 файлов

Приложение для клиентов: подборка, исследование по карте, поиск, прощающий опечатки, корзина, оплата, отслеживание заказа в реальном времени, отзывы и профиль. Версия 1.0.127, выпущена на 10 языках.

Nibblify Partner

Dart · 41 700 строк · 140 файлов

Приложение для ресторанов: меню, акции, часы работы, живой поток заказов, управление командой, выплаты и программа для авторов. Версия 1.0.74, выпущена на 10 языках.

Nibblify Driver

Dart · 11 600 строк · 50 файлов

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

Nibblify Staff Portal

Flutter Web · 49 900 строк · 191 файл

Внутренняя операционная консоль: верификация ресторанов, документы и кошельки курьеров, поддержка заказов, живые карты, аналитика и мониторинг — за всем этим 102 административные Cloud Functions.

Бэкенд и безопасность

JavaScript · 25 500 строк · 238 функций

Cloud Functions, триггеры Firestore и запланированные задачи, плюс 1 119 строк правил безопасности Firestore и Storage для 47 коллекций.

Тесты

Dart и JavaScript · 42 600 строк

296 тестовых файлов на Dart плюс интеграционные наборы на эмуляторе и тесты правил безопасности. Это та страховочная сетка, которая позволяет спокойно выпускать код, написанный ИИ.

Переводы

36 словарей · 57 300 строк

26 языковых файлов для приложений и 10 словарей для сайта, которые разворачиваются ещё в 154 700 строк сгенерированного Dart. Арабский выходит с полноценной вёрсткой справа налево, а не с зеркалированием, добавленным напоследок.

Этот сайт

HTML, CSS, JS · 19 300 строк · 20 страниц

20 исходных страниц, которые собственная Node-сборка превращает в 200 локализованных статических страниц — без фреймворка и меньше 250 строк JavaScript, доходящих до браузера.

307,000
Строк, написанных вручную по всей платформе

Если считать и код локализации, сгенерированный из этих переводов, в репозиториях в сумме около 463 000 строк.


Ограничители

Как мы держим написанный ИИ код в узде

Записать

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

Малые проверенные диффы

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

Машины проверяют машины

Тесты, сверка ключей перевода, аудит SEO-метаданных и наборы тестов правил безопасности проходят по каждому изменению.

Выпустить и наблюдать

255 сборок в магазинах по четырём приложениям, а отчёты о сбоях и аналитика показывают, что произошло на самом деле.


«Модели не заменили инженерию. Они убрали набор текста. Осталось то, что всегда и было трудным: решить, что строить, и убедиться, что оно работает».
Zakaryae Ait Ouamer · Основатель и CEO, Nibblify Food

Хронология

Восемь месяцев, шесть репозиториев

Ноябрь 2025 — первый коммит

Nibblify Food начинается как один Flutter-проект с бэкендом на Firebase.

Декабрь 2025 — сторона ресторанов

Стартует Nibblify Partner, и проект перестаёт быть приложением, становясь системой.

Май 2026 — сайт

Собственная статическая сборка рендерит сайт на 10 языках — с hreflang, структурированными данными и постраничным SEO-аудитом.

Май 2026 — курьеры и операции

Nibblify Driver, Staff Portal и общий бэкенд-репозиторий стартуют в пределах трёх недель друг от друга.

Август 2026 — при поддержке Le Mans Innovation

Платформа выходит в общегородской пилот и приходит в Ле-Ман проверенной, а не теоретической.

О партнёрстве →

Строите так же?

Мы нанимаем любопытных

Если выпускать в таком темпе — и при этом настолько подкреплять всё тестами — похоже на вашу инженерию, напишите нам.