Что это.
dartway_flutter — всё, что нужно приложению вокруг его данных, до того как появляется первый экран: запуск, действия, асинхронный рендеринг, уведомления, отчёты об ошибках. Не дизайн-система — здесь нет ни одной кнопки. Механизмы, а не внешний вид.Что даёт конкретно.
— Запуск одной строкой.
DwAppRunner берёт на себя то, что настраивает каждое приложение и не любит настраивать никто: ProviderScope, нативный сплэш, инициализаторы по порядку, зону, которая ловит необработанные ошибки, а не теряет их.— Защищённые действия.
dw.action(...) — оборачивает действие пользователя: показывает подтверждение, гоняет loading-состояние, ловит ошибку, шлёт уведомление. Двойной тап не создаёт две записи — защита от повторного нажатия встроена. И это работает под любым виджетом, не только под кнопкой.— Асинхронный рендеринг.
dwBuildAsync рисует loading / error / data единообразно, а loading — это скелет, построенный из твоего же реального виджета, не спиннер.— Ошибки с контекстом. Каждая ошибка несёт снимок состояния приложения: маршрут, смонтированные фичи, действие, платформа, версия. Не голый stack trace в минифицированном вебе, а «что делал пользователь, когда сломалось».
Как устроено. Приложение объявляет один амбиентный корень —
dw — и обращается к нему отовсюду: dw.action, dw.notify, dw.confirm, dw.plugins.telegram. Одна точка входа, один автокомплит. То, что подключаешь опционально (Telegram, локальное хранилище), — плагины под dw.plugins, за которые платит только тот, кому они нужны.Riverpod-native. DartWay — мнение, а не набор виджетов: Serverpod на сервере, Riverpod на клиенте,
AsyncValue — тип, на котором построен весь async-контракт.Полезен сам по себе. Пакет не тянет ни сервера, ни слоя данных — работает в любом Flutter+Riverpod приложении. В комплекте — запускаемый пример: скопировал,
flutter run, читаешь сверху вниз.За ним следом — ещё восемь пакетов, включая инструментарий под конкретные задачи и главное ядро для fullstack Dart разработки
Ссылка на pub.dev - https://pub.dev/packages/dartway_flutter
Напоминаю: в субботу в 14:00 пройдет публичное демо всех пакетов