Primary Constructors в Dart: долгий путь к элегантному синтаксису ✨
Вы когда-нибудь задумывались, почему такая, казалось бы, очевидная фича, как primary constructors, появилась в Dart не сразу? 🤔
Команда языка потратила огромное количество времени и итераций, прежде чем дизайн стал выглядеть действительно надёжным и «дартовым». Боб Нюстром (Bob Nystrom) поделился внутренней кухней этого процесса: какие подводные камни встречались, почему первые прототипы отбрасывались и как в итоге родилось то, чем мы пользуемся сейчас.
Это отличный кейс: даже для простых вещей иногда нужно пройти через десятки «нет», чтобы сказать одно правильное «да». Читать историю эволюции синтаксиса — значит лучше понять философию языка. 🧠💡
Полную новость читайте здесь
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #FlutterForDev #languageDesign #dart3 #cleanCode
Вы когда-нибудь задумывались, почему такая, казалось бы, очевидная фича, как primary constructors, появилась в Dart не сразу? 🤔
Команда языка потратила огромное количество времени и итераций, прежде чем дизайн стал выглядеть действительно надёжным и «дартовым». Боб Нюстром (Bob Nystrom) поделился внутренней кухней этого процесса: какие подводные камни встречались, почему первые прототипы отбрасывались и как в итоге родилось то, чем мы пользуемся сейчас.
Это отличный кейс: даже для простых вещей иногда нужно пройти через десятки «нет», чтобы сказать одно правильное «да». Читать историю эволюции синтаксиса — значит лучше понять философию языка. 🧠💡
Полную новость читайте здесь
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #FlutterForDev #languageDesign #dart3 #cleanCode
Самые лучшие обновлённые пакеты за последние 24 часа
smooth_sheets 1.1.2 — виджеты модальных и постоянных боттом-шитов с плавной анимацией, поддержкой вложенной навигации (в т.ч. go_router) и кастомным дизайном.
🛠 Что нового: исправлен краш Widget Inspector при отключении драга листа (#595).
👍 Лайки: 652, 📥 Скачиваний: 98.4K
https://pub.dev/packages/smooth_sheets
dart_openai 8.0.0 — неофициальный Dart/Flutter SDK для OpenAI API (чат, реалтайм, видео, файлы, файн-тюнинг, админка и др.). Работает везде: Android, iOS, Web, десктоп, сервер.
🛠 Главное в 8.0.0: полная поддержка Flutter Web (убраны импорты dart:io), авто-ретраи (OpenAIRetryPolicy), Watchdog для стримов, парсинг rate-limit заголовков, нативная поддержка Azure OpenAI, жёсткая типизация моделей.
⚠ Брейкинг: методы загрузки файлов принимают только OpenAIFile.
👍 Лайки: 575, 📥 Скачиваний: 16.8K
https://pub.dev/packages/dart_openai
ed25519_edwards 0.3.2 — порт Go-реализации Ed25519 для подписи и верификации (Edwards-кривая). Низкоуровневый API для криптографических примитивов.
🛠 В обновлении: поправлен pubspec.yaml для рейтинга pub.dev, обновлена совместимость с SDK и конфиг линтера.
👍 Лайки: 13, 📥 Скачиваний: 533K
https://pub.dev/packages/ed25519_edwards
googleapis 17.0.0 — сгенерированные Dart-библиотеки для доступа к Google API (Admin SDK, AdMob, Cloud, YouTube и 200+ других).
🛠 Главное в обновлении: устарели API cloudfunctions, firestore, iam и др. (перенесены в google_cloud_*); добавлены agentidentity, health, merchantapi, searchads360 и др.; удалены analytics, apigeeregistry, dfareporting и др.
👍 Лайки: 1140, 📥 Скачиваний: 1.0M
https://pub.dev/packages/googleapis
_discoveryapis_commons 1.0.8 — вспомогательный пакет для работы Dart-кода с API Discovery Service (не для прямого использования).
🛠 Что нового: исправлено определение веб-среды, требуется SDK ^3.9.0.
👍 Лайки: 3, 📥 Скачиваний: 924K
https://pub.dev/packages/_discoveryapis_commons
flutter_expandable_fab 3.0.0 — Speed Dial FAB (раскрывающаяся кнопка действия) с поддержкой вертикального, горизонтального и веерного раскрытия, гибкой кастомизацией и программным управлением.
💥 BREAKING v3.0.0: миграция на пакет material_ui (вместо flutter/material.dart), ExpandableFab.location возвращает локацию из material_ui (несовместима со стандартным Scaffold), мин. требования: Dart ≥3.12, Flutter ≥3.44. Приложения на стандартном Material должны оставаться на 2.5.x.
👍 Лайки: 446, 📥 Скачиваний: 24.2K
https://pub.dev/packages/flutter_expandable_fab
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #smooth_sheets #dart_openai #ed25519_edwards #googleapis #_discoveryapis_commons #flutter_expandable_fab
smooth_sheets 1.1.2 — виджеты модальных и постоянных боттом-шитов с плавной анимацией, поддержкой вложенной навигации (в т.ч. go_router) и кастомным дизайном.
🛠 Что нового: исправлен краш Widget Inspector при отключении драга листа (#595).
👍 Лайки: 652, 📥 Скачиваний: 98.4K
https://pub.dev/packages/smooth_sheets
dart_openai 8.0.0 — неофициальный Dart/Flutter SDK для OpenAI API (чат, реалтайм, видео, файлы, файн-тюнинг, админка и др.). Работает везде: Android, iOS, Web, десктоп, сервер.
🛠 Главное в 8.0.0: полная поддержка Flutter Web (убраны импорты dart:io), авто-ретраи (OpenAIRetryPolicy), Watchdog для стримов, парсинг rate-limit заголовков, нативная поддержка Azure OpenAI, жёсткая типизация моделей.
⚠ Брейкинг: методы загрузки файлов принимают только OpenAIFile.
👍 Лайки: 575, 📥 Скачиваний: 16.8K
https://pub.dev/packages/dart_openai
ed25519_edwards 0.3.2 — порт Go-реализации Ed25519 для подписи и верификации (Edwards-кривая). Низкоуровневый API для криптографических примитивов.
🛠 В обновлении: поправлен pubspec.yaml для рейтинга pub.dev, обновлена совместимость с SDK и конфиг линтера.
👍 Лайки: 13, 📥 Скачиваний: 533K
https://pub.dev/packages/ed25519_edwards
googleapis 17.0.0 — сгенерированные Dart-библиотеки для доступа к Google API (Admin SDK, AdMob, Cloud, YouTube и 200+ других).
🛠 Главное в обновлении: устарели API cloudfunctions, firestore, iam и др. (перенесены в google_cloud_*); добавлены agentidentity, health, merchantapi, searchads360 и др.; удалены analytics, apigeeregistry, dfareporting и др.
👍 Лайки: 1140, 📥 Скачиваний: 1.0M
https://pub.dev/packages/googleapis
_discoveryapis_commons 1.0.8 — вспомогательный пакет для работы Dart-кода с API Discovery Service (не для прямого использования).
🛠 Что нового: исправлено определение веб-среды, требуется SDK ^3.9.0.
👍 Лайки: 3, 📥 Скачиваний: 924K
https://pub.dev/packages/_discoveryapis_commons
flutter_expandable_fab 3.0.0 — Speed Dial FAB (раскрывающаяся кнопка действия) с поддержкой вертикального, горизонтального и веерного раскрытия, гибкой кастомизацией и программным управлением.
💥 BREAKING v3.0.0: миграция на пакет material_ui (вместо flutter/material.dart), ExpandableFab.location возвращает локацию из material_ui (несовместима со стандартным Scaffold), мин. требования: Dart ≥3.12, Flutter ≥3.44. Приложения на стандартном Material должны оставаться на 2.5.x.
👍 Лайки: 446, 📥 Скачиваний: 24.2K
https://pub.dev/packages/flutter_expandable_fab
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #smooth_sheets #dart_openai #ed25519_edwards #googleapis #_discoveryapis_commons #flutter_expandable_fab
Собираем Rover Mini: от железа до gRPC и Flutter-пульта 🤖🚀
Друзья, прочитал крутую серию статей про создание компактного настольного ровера Rover Mini. Автор решил не рисковать большим роботом (он же был опасен резкими рывками!) и собрал мини-версию для безопасной отладки софта. Получился отличный кейс по фулл-стек робототехнике: от паяльника и проблем с питанием до gRPC-микросервисов и Flutter-приложения. Делюсь главными фишками! 👇
🛠 Железо и «танцы с бубном» питания
В основу лег RP2040-Zero (дешевле и удобнее Pico) и Raspberry Pi Zero 2 W. Плюс камера 120°, сервы, драйвер TB6612FNG и самособранный аккумулятор 2P2S с BMS.
Главная боль — перезагрузки Pi под нагрузкой моторов. Лечилось банально, но эффективно: заменой проводов питания на сечение 0.2 мм². Мораль: не экономьте на проводах! ⚡️
🧠 Архитектура: разделение труда
Микроконтроллер на TinyGo — это «мозг рефлексов»: моторы, сервы, безопасность. Raspberry Pi — «прокси и медиа-сервер»: камера (H.264 через
Связь MCU ↔️ Pi по UART с AT-подобными командами (
📱 Бэкенд, Прокси и Flutter
Бэкенд (Go) раздает JWT, управляет доступом к роверам и отдает токены для WebRTC.
Отдельно выделен сервис Proxy — он аутентифицирует юзера, находит ровер и поднимает двунаправленный gRPC-стрим (bridge) между приложением и железом. Архитектура позволяет масштабировать прокси независимо.
Мобильный клиент на Flutter (пока Android): автор отказался от крестообразного управления в пользу двух виртуальных стиков (как в PUBG/GTA). Решил лаги отрисовки скорости выносом виджета в отдельный компонент и миграцией на Riverpod. 🎮
⚙️ Секрет плавности: Машина состояний на 9 режимов
Самое вкусное — логика движения. Драйвер TB6612FNG не дает обратной связи по скорости. Изначально рампу (плавный разгон) считали на клиенте — спамили 100 сообщениями за нажатие. 😱
Решение: перенесли рампу на ровер! Теперь клиент шлет одно сообщение с булевым состоянием кнопки (1/0).
Управление 4 моторами + флаг тормоза кодируется 5-туплом
🔮 Планы автора: второй UART для LiDAR (230400 baud), автономная остановка перед препятствиями и настройка видеопотока (о чем будет следующая часть).
Читать полную историю с кодом и схемами здесь: статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #robotics #go #tinygo #grpc
Друзья, прочитал крутую серию статей про создание компактного настольного ровера Rover Mini. Автор решил не рисковать большим роботом (он же был опасен резкими рывками!) и собрал мини-версию для безопасной отладки софта. Получился отличный кейс по фулл-стек робототехнике: от паяльника и проблем с питанием до gRPC-микросервисов и Flutter-приложения. Делюсь главными фишками! 👇
🛠 Железо и «танцы с бубном» питания
В основу лег RP2040-Zero (дешевле и удобнее Pico) и Raspberry Pi Zero 2 W. Плюс камера 120°, сервы, драйвер TB6612FNG и самособранный аккумулятор 2P2S с BMS.
Главная боль — перезагрузки Pi под нагрузкой моторов. Лечилось банально, но эффективно: заменой проводов питания на сечение 0.2 мм². Мораль: не экономьте на проводах! ⚡️
🧠 Архитектура: разделение труда
Микроконтроллер на TinyGo — это «мозг рефлексов»: моторы, сервы, безопасность. Raspberry Pi — «прокси и медиа-сервер»: камера (H.264 через
rpicam-vid), логи в Loki, мост UART ↔️ gRPC.Связь MCU ↔️ Pi по UART с AT-подобными командами (
AT, DRIVE, TRIPOD). Логи прокидываются через Pi в формате $LOG. Взаимодействие с миром — только gRPC (Unary для бэка, Streams для управления), UDP отбросили ради надежности MVP.📱 Бэкенд, Прокси и Flutter
Бэкенд (Go) раздает JWT, управляет доступом к роверам и отдает токены для WebRTC.
Отдельно выделен сервис Proxy — он аутентифицирует юзера, находит ровер и поднимает двунаправленный gRPC-стрим (bridge) между приложением и железом. Архитектура позволяет масштабировать прокси независимо.
Мобильный клиент на Flutter (пока Android): автор отказался от крестообразного управления в пользу двух виртуальных стиков (как в PUBG/GTA). Решил лаги отрисовки скорости выносом виджета в отдельный компонент и миграцией на Riverpod. 🎮
⚙️ Секрет плавности: Машина состояний на 9 режимов
Самое вкусное — логика движения. Драйвер TB6612FNG не дает обратной связи по скорости. Изначально рампу (плавный разгон) считали на клиенте — спамили 100 сообщениями за нажатие. 😱
Решение: перенесли рампу на ровер! Теперь клиент шлет одно сообщение с булевым состоянием кнопки (1/0).
Управление 4 моторами + флаг тормоза кодируется 5-туплом
DRIVE=F,L,B,R,Brake. Реализовано 9 состояний: стоп (приоритет), 4 прямых, 4 комбинированных (вперед+влево и т.д.) с плавным замедлением внутренних колес для поворотов. Сейчас шаг инкремента = 1, разгон медленный — есть куда оптимизировать. 📈🔮 Планы автора: второй UART для LiDAR (230400 baud), автономная остановка перед препятствиями и настройка видеопотока (о чем будет следующая часть).
Читать полную историю с кодом и схемами здесь: статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #robotics #go #tinygo #grpc
🔥1
Java-бэкендер в одиночку написал Flutter MVP за 3 месяца: стоило ли оно того?
Представь: бэкенд-разработчица на Java Милена понимает, что команде срочно нужно мобильное приложение, а нанимать мобильных специалистов нет ни времени, ни бюджета. Решение? Взять Flutter в свои руки и написать MVP за три месяца, совмещая это с основной работой. 🚀
Архитектуру и стейт-менеджмент (Bloc, DI, репозитории, DTO) ей дались на ура — бэкенд-бэкграунд сыграл на руку. Но вот декларативный UI с его бесконечной вложенностью виджетов стал настоящим шоком после строгой структуры Java. Привыкнуть к этому «хаосу» ушло больше всего времени и нервов. 😅
Платформенные нюансы ударили неожиданно: «один код везде» — миф. Баги регулярно ползли только на iOS или только на Android. Главным боссом проекта стал календарь платежей: запутанная синхронизация, чужой код и цикл «починил одно — сломал другое». Авторизацию через Telegram-бота пришлось переделывать под мобильные реалии (сворачивание приложения рвало SSE-соединение). В отсутствии ментора главным помощником стал ИИ (Cursor): ускорил старт в разы, но ~40% советов были вредными и генерировали баги. ИИ не заменяет сеньора — у него нет контекста и инициативы. 🤖
Быт усугублял картину: никакого CI, а билды передавали через Telegram, который в какой-то момент просто заблокировали. 📉 Вердикт по Flutter: мобильная разработка не зашла. Вложенные виджеты остались чужеродными, отладка под iOS вызывала фрустрацию, а душа лежала к бэкенду (API, архитектура, авторизация).
Но опыт не пропал зря! 💡
1️⃣ Набила шишки на SSE — пригодилось потом на бэкенде.
2️⃣ Поняла, как живут фронтенд и боты — интеграции отлаживаются в разы быстрее.
3️⃣ Главное: замыкание полного цикла (Бэкенд → Приложение → Телефон в руках) мгновенно показывает ошибки и кардинально меняет качество работы.
Главный вывод: небольшой команде не всегда нужен узкий специалист. Освоить технологию до рабочего релиза реально, даже если она не становится основной. Приложение выпущено — это личная победа! 🏆
Читать полную историю с деталями: статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #mobiledev #backend #architecture
Представь: бэкенд-разработчица на Java Милена понимает, что команде срочно нужно мобильное приложение, а нанимать мобильных специалистов нет ни времени, ни бюджета. Решение? Взять Flutter в свои руки и написать MVP за три месяца, совмещая это с основной работой. 🚀
Архитектуру и стейт-менеджмент (Bloc, DI, репозитории, DTO) ей дались на ура — бэкенд-бэкграунд сыграл на руку. Но вот декларативный UI с его бесконечной вложенностью виджетов стал настоящим шоком после строгой структуры Java. Привыкнуть к этому «хаосу» ушло больше всего времени и нервов. 😅
Платформенные нюансы ударили неожиданно: «один код везде» — миф. Баги регулярно ползли только на iOS или только на Android. Главным боссом проекта стал календарь платежей: запутанная синхронизация, чужой код и цикл «починил одно — сломал другое». Авторизацию через Telegram-бота пришлось переделывать под мобильные реалии (сворачивание приложения рвало SSE-соединение). В отсутствии ментора главным помощником стал ИИ (Cursor): ускорил старт в разы, но ~40% советов были вредными и генерировали баги. ИИ не заменяет сеньора — у него нет контекста и инициативы. 🤖
Быт усугублял картину: никакого CI, а билды передавали через Telegram, который в какой-то момент просто заблокировали. 📉 Вердикт по Flutter: мобильная разработка не зашла. Вложенные виджеты остались чужеродными, отладка под iOS вызывала фрустрацию, а душа лежала к бэкенду (API, архитектура, авторизация).
Но опыт не пропал зря! 💡
1️⃣ Набила шишки на SSE — пригодилось потом на бэкенде.
2️⃣ Поняла, как живут фронтенд и боты — интеграции отлаживаются в разы быстрее.
3️⃣ Главное: замыкание полного цикла (Бэкенд → Приложение → Телефон в руках) мгновенно показывает ошибки и кардинально меняет качество работы.
Главный вывод: небольшой команде не всегда нужен узкий специалист. Освоить технологию до рабочего релиза реально, даже если она не становится основной. Приложение выпущено — это личная победа! 🏆
Читать полную историю с деталями: статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #mobiledev #backend #architecture
👍1
Мобильная разработка на Aurora OS: свой VS Code в браузере и плагин для автоматизации 🚀
Представь: срочно нужно поправить баг в проде, а под рукой только планшет. Автор статьи оказался в такой ситуации и решил не паниковать, а поднять полноценную IDE в облаке. Так родилась идея создать мобильное рабочее место для разработки под «Аврору» на базе code-server (веб-версия VS Code) на удалённом сервере ☁️
Стартовал с инфраструктуры: минимум 1 ГБ ОЗУ и 2 ядра (для сборок лучше 4/4). Aurora Platform SDK ставится нативно на сервере — в Docker ведёт себя капризно. code-server разворачивается официальным скриптом с автозапуском через systemd. Главное — безопасный доступ извне: настраиваем обратный прокси Caddy, который сам выдаёт и обновляет SSL-сертификаты (через acme.sh для доменов или самоподписанные для локальной сети/по IP) 🔒
Но заходить в браузерный терминал и гонять команды вручную — не наш метод. Автор написал собственный плагин для VS Code на TypeScript (генератор yo + generator-code, даже без локального Node.js — через Docker-образы). Архитектура расширения выстроена вокруг трёх панелей: «Устройства», «Проект» и «Инструменты» 🧩
Что умеет плагин:
⚙️ Мастер проектов — пошаговое создание приложения, добавление платформы Aurora, pub get, анализ, тесты и сборка под aarch64, armv7, x86_64 одной кнопкой.
📱 Управление железом по SSH: обмен ключами, терминал, передача файлов/пакетов, установка, запуск, стоп, логи.
🛠 Инструменты: настройки плагина, IP-устройств, подпись RPM-сертификатами.
Самый элегантный трюк — установка пакета без ввода пароля root. Вместо костылей с sudo или sfdk используется системная шина D-Bus и сервис ru.omp.APM. Запуск — через runtime-manager-tool (тоже по D-Bus), с поддержкой режима отладки и пробросом логов в консоль IDE 🎯
Готовый плагин пакуется vsce в .vsix — ставится локально или публикуется в маркетплейс. Итог: единая кнопка «Собрать → Залить → Установить → Запустить» прямо в редакторе.
Исходники открыты — можно форкать и адаптировать под себя. Такой сетап не заменит мощную станцию (нужен сервер, интернет, настройка доступа), но как «план Б» для полевых правок или экстренного дебага — просто спасение 🛟 И да, базовый каркас такого плагина за вас может сгенерировать нейросеть, останется только дописать логику.
Читать полную серию статей с кодом и конфигами: ссылка
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #auroraos #vscode #code-server
Представь: срочно нужно поправить баг в проде, а под рукой только планшет. Автор статьи оказался в такой ситуации и решил не паниковать, а поднять полноценную IDE в облаке. Так родилась идея создать мобильное рабочее место для разработки под «Аврору» на базе code-server (веб-версия VS Code) на удалённом сервере ☁️
Стартовал с инфраструктуры: минимум 1 ГБ ОЗУ и 2 ядра (для сборок лучше 4/4). Aurora Platform SDK ставится нативно на сервере — в Docker ведёт себя капризно. code-server разворачивается официальным скриптом с автозапуском через systemd. Главное — безопасный доступ извне: настраиваем обратный прокси Caddy, который сам выдаёт и обновляет SSL-сертификаты (через acme.sh для доменов или самоподписанные для локальной сети/по IP) 🔒
Но заходить в браузерный терминал и гонять команды вручную — не наш метод. Автор написал собственный плагин для VS Code на TypeScript (генератор yo + generator-code, даже без локального Node.js — через Docker-образы). Архитектура расширения выстроена вокруг трёх панелей: «Устройства», «Проект» и «Инструменты» 🧩
Что умеет плагин:
⚙️ Мастер проектов — пошаговое создание приложения, добавление платформы Aurora, pub get, анализ, тесты и сборка под aarch64, armv7, x86_64 одной кнопкой.
📱 Управление железом по SSH: обмен ключами, терминал, передача файлов/пакетов, установка, запуск, стоп, логи.
🛠 Инструменты: настройки плагина, IP-устройств, подпись RPM-сертификатами.
Самый элегантный трюк — установка пакета без ввода пароля root. Вместо костылей с sudo или sfdk используется системная шина D-Bus и сервис ru.omp.APM. Запуск — через runtime-manager-tool (тоже по D-Bus), с поддержкой режима отладки и пробросом логов в консоль IDE 🎯
Готовый плагин пакуется vsce в .vsix — ставится локально или публикуется в маркетплейс. Итог: единая кнопка «Собрать → Залить → Установить → Запустить» прямо в редакторе.
Исходники открыты — можно форкать и адаптировать под себя. Такой сетап не заменит мощную станцию (нужен сервер, интернет, настройка доступа), но как «план Б» для полевых правок или экстренного дебага — просто спасение 🛟 И да, базовый каркас такого плагина за вас может сгенерировать нейросеть, останется только дописать логику.
Читать полную серию статей с кодом и конфигами: ссылка
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #auroraos #vscode #code-server
Новые пакеты за неделю
LocaleSweep
Автоматизированный QA локализации для Flutter. Генерирует скриншоты для всех комбинаций языков, масштабов текста и размеров экранов, выявляя переполнения, отсутствующие ключи ARB и ошибки RTL-раскладки до релиза.
👍 Лайки: 3, 📥 Скачиваний: 0
https://pub.dev/packages/locale_sweep
prithbrokenicons
Кроссплатформенный набор из 904 иконок для Flutter (Android, iOS, Web, Windows, macOS, Linux). Чистый Dart без нативных зависимостей, два стиля: outline и filled, нулевые рантайм-зависимости.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/prithbrokenicons
flutter_cockpit_test
Интеграционные тесты Flutter с реальным движком Cockpit. Расширяет стандартный integration_test, добавляя точные селекторы, реальные hit-tested жесты, скриншоты и контроль вьюпорта. Идеально для dev-шеллов, уже использующих Cockpit.
👍 Лайки: 1, 📥 Скачиваний: 213
https://pub.dev/packages/flutter_cockpit_test
haudiotagger
Rust-движок для работы с аудио-метаданными в Flutter. Позволяет читать, писать и редактировать теги (ID3, Vorbis, APE и др.) на всех платформах. Поддерживает частичное обновление полей, пакетную обработку с прогрессом, ReplayGain и кастомные теги. Высокая производительность благодаря Rust (lofty + flutter_rust_bridge).
👍 Лайки: 6, 📥 Скачиваний: 650
https://pub.dev/packages/haudiotagger
mermaid_flutter
Диаграммы Mermaid нативно в Flutter. Позволяет рендерить диаграммы прямо в приложениях без использования SVG, WebViews или platform views. Использует mermaid_core для парсинга и CustomPainter для отрисовки. Поддержка тем, интерактивного просмотра (панорамирование, зум) и обработки ошибок.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/mermaid_flutter
smooth_window_close
Плавное закрытие для Flutter Windows. Решает проблему «зависшего» последнего кадра при выходе из десктопных приложений. Сначала скрывает окно, затем выполняет асинхронное сохранение состояния и очистку ресурсов (БД, сокеты, трей), и только после этого завершает работу. Поддерживает режим «свернуть в трей» без дополнительных зависимостей.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/smooth_window_close
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages #locale_sweep #prithbrokenicons #flutter_cockpit_test #haudiotagger #mermaid_flutter #smooth_window_close
LocaleSweep
Автоматизированный QA локализации для Flutter. Генерирует скриншоты для всех комбинаций языков, масштабов текста и размеров экранов, выявляя переполнения, отсутствующие ключи ARB и ошибки RTL-раскладки до релиза.
👍 Лайки: 3, 📥 Скачиваний: 0
https://pub.dev/packages/locale_sweep
prithbrokenicons
Кроссплатформенный набор из 904 иконок для Flutter (Android, iOS, Web, Windows, macOS, Linux). Чистый Dart без нативных зависимостей, два стиля: outline и filled, нулевые рантайм-зависимости.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/prithbrokenicons
flutter_cockpit_test
Интеграционные тесты Flutter с реальным движком Cockpit. Расширяет стандартный integration_test, добавляя точные селекторы, реальные hit-tested жесты, скриншоты и контроль вьюпорта. Идеально для dev-шеллов, уже использующих Cockpit.
👍 Лайки: 1, 📥 Скачиваний: 213
https://pub.dev/packages/flutter_cockpit_test
haudiotagger
Rust-движок для работы с аудио-метаданными в Flutter. Позволяет читать, писать и редактировать теги (ID3, Vorbis, APE и др.) на всех платформах. Поддерживает частичное обновление полей, пакетную обработку с прогрессом, ReplayGain и кастомные теги. Высокая производительность благодаря Rust (lofty + flutter_rust_bridge).
👍 Лайки: 6, 📥 Скачиваний: 650
https://pub.dev/packages/haudiotagger
mermaid_flutter
Диаграммы Mermaid нативно в Flutter. Позволяет рендерить диаграммы прямо в приложениях без использования SVG, WebViews или platform views. Использует mermaid_core для парсинга и CustomPainter для отрисовки. Поддержка тем, интерактивного просмотра (панорамирование, зум) и обработки ошибок.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/mermaid_flutter
smooth_window_close
Плавное закрытие для Flutter Windows. Решает проблему «зависшего» последнего кадра при выходе из десктопных приложений. Сначала скрывает окно, затем выполняет асинхронное сохранение состояния и очистку ресурсов (БД, сокеты, трей), и только после этого завершает работу. Поддерживает режим «свернуть в трей» без дополнительных зависимостей.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/smooth_window_close
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages #locale_sweep #prithbrokenicons #flutter_cockpit_test #haudiotagger #mermaid_flutter #smooth_window_close
🔥2
Летний перерыв заканчивается! С сегодняшнего дня регулярные рубрики возобновятся!
🔥4
🔥 Топ обновлённых пакетов за последние 24 часа
wakelock_plus 1.8.0
Популярный пакет для Flutter, позволяющий удерживать экран устройства включенным (предотвращать засыпание). Поддерживает Android, iOS, Web, macOS, Windows и Linux. В новой версии добавлена поддержка tvOS, обновлена совместимость с Flutter 3.47 и исправлены требования к платформе iOS в SPM.
👍 Лайки: 641, 📥 Скачиваний: 2.15M
https://pub.dev/packages/wakelock_plus
phone_numbers_parser 9.0.26
Dart-библиотека для парсинга телефонных номеров. Пакет поддерживает валидацию, форматирование и поиск номеров в тексте на всех платформах без необходимости настройки каналов. Обновление метаданных.
👍 Лайки: 274, 📥 Скачиваний: 286К
https://pub.dev/packages/phone_numbers_parser
jni_flutter 1.0.3
Библиотека для доступа к Android API Flutter из Dart. В новой версии обновлена версия Kotlin в примерах.
👍 Лайки: 16, 📥 Скачиваний: 4.25M
https://pub.dev/packages/jni_flutter
liquid_glass_widgets 1.2.3
Пакет для добавления фирменного эффекта «жидкого стекла» из iOS 26 в Flutter-приложения: реальный шейдерный блюр, физика «желе» и динамическое освещение. Исправлен баг в GlassTabBar.minimizable и выделен виджет MinimizableTrailingPill для единообразной физики анимаций.
👍 Лайки: 246, 📥 Скачиваний: 53.5К
https://pub.dev/packages/liquid_glass_widgets
sherpa-onnx 1.13.7
Обновление расширяет поддержку платформ: теперь Rust доступен на iOS и Windows ARM64. Также добавлены исправления для Flutter (iOS, APK) и улучшена стабильность ASR-моделей (Qwen3, Whisper).
👍 Лайки: 120, 📥 Скачиваний: 43.6К
https://pub.dev/packages/sherpa-onnx
Chewie 1.16.1
Популярный видео-плеер для Flutter. В новой версии добавлена опция showPlayButton в ChewieController, позволяющая программно скрывать или показывать центральную кнопку воспроизведения.
👍 Лайки: 2.3К, 📥 Скачиваний: 749К
https://pub.dev/packages/chewie
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #wakelock_plus #phone_numbers_parser #jni_flutter #liquid_glass_widgets #sherpa-onnx #chewie
wakelock_plus 1.8.0
Популярный пакет для Flutter, позволяющий удерживать экран устройства включенным (предотвращать засыпание). Поддерживает Android, iOS, Web, macOS, Windows и Linux. В новой версии добавлена поддержка tvOS, обновлена совместимость с Flutter 3.47 и исправлены требования к платформе iOS в SPM.
👍 Лайки: 641, 📥 Скачиваний: 2.15M
https://pub.dev/packages/wakelock_plus
phone_numbers_parser 9.0.26
Dart-библиотека для парсинга телефонных номеров. Пакет поддерживает валидацию, форматирование и поиск номеров в тексте на всех платформах без необходимости настройки каналов. Обновление метаданных.
👍 Лайки: 274, 📥 Скачиваний: 286К
https://pub.dev/packages/phone_numbers_parser
jni_flutter 1.0.3
Библиотека для доступа к Android API Flutter из Dart. В новой версии обновлена версия Kotlin в примерах.
👍 Лайки: 16, 📥 Скачиваний: 4.25M
https://pub.dev/packages/jni_flutter
liquid_glass_widgets 1.2.3
Пакет для добавления фирменного эффекта «жидкого стекла» из iOS 26 в Flutter-приложения: реальный шейдерный блюр, физика «желе» и динамическое освещение. Исправлен баг в GlassTabBar.minimizable и выделен виджет MinimizableTrailingPill для единообразной физики анимаций.
👍 Лайки: 246, 📥 Скачиваний: 53.5К
https://pub.dev/packages/liquid_glass_widgets
sherpa-onnx 1.13.7
Обновление расширяет поддержку платформ: теперь Rust доступен на iOS и Windows ARM64. Также добавлены исправления для Flutter (iOS, APK) и улучшена стабильность ASR-моделей (Qwen3, Whisper).
👍 Лайки: 120, 📥 Скачиваний: 43.6К
https://pub.dev/packages/sherpa-onnx
Chewie 1.16.1
Популярный видео-плеер для Flutter. В новой версии добавлена опция showPlayButton в ChewieController, позволяющая программно скрывать или показывать центральную кнопку воспроизведения.
👍 Лайки: 2.3К, 📥 Скачиваний: 749К
https://pub.dev/packages/chewie
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #wakelock_plus #phone_numbers_parser #jni_flutter #liquid_glass_widgets #sherpa-onnx #chewie
👍2
Миграция Flutter iOS CI/CD на Xcode Cloud: как сэкономить 10x и избавиться от боли с сертификатами 🚀
Долгое время iOS-сборки в GitHub Actions были «черной дырой» бюджета: минута на macOS-раннере съедает 10 минут квоты (или стоит в 10 раз дороже Linux). Старый пайплайн на 90 строк YAML требовал ручного управления 6 секретами, профилями и ключами — хрупко, больно и дорого. 😭
Решение — переезд на Xcode Cloud. И это гейм-чейнджер: 25 часов compute-времени в месяц уже входят в стандартную подписку Apple Developer Program ($99/год). Релиз теперь стоит 0 минут GitHub Actions и всего ~6 минут оплачиваемого времени Apple. 💸
Главные плюсы, за которые стоит сказать «спасибо»:
✅ Managed Signing — Apple сама управляет подписью. Никаких keychain, base64, правок
✅ Доставка в TestFlight настраивается галочкой в UI, без API-ключей.
✅ Кастомизация через три shell-скрипта в папке
Есть и минус: конфигурация уходит из Git в веб-интерфейс App Store Connect (No code-as-config). Лечится обязательным ранбуком (документацией с датой) в репозитории, иначе пайплайн превращается в «фольклор». 📝
Триггеры разделили префиксами тегов:
Путь первого успешного билда пролегал через 7 кругов ада за 6 коммитов (ни одна ошибка не была виной дизайна миграции!):
1️⃣ Права доступа к репо — помогло переключение на «New Primary Repository».
2️⃣ Устаревший Flutter тянул старый
3️⃣ Swift Package Manager требует закоммиченный
4️⃣ Ошибка «specs repository is too out-of-date» — ложный след.
5️⃣ Настоящая причина — конфликт Ruby: системный 2.6 не видел
6️⃣ Двойной
7️⃣ Застарелый
💡 Главный урок: CI, который не запускаешь регулярно, не находит ошибки. Ошибка CocoaPods «too out-of-date» почти всегда вводит в заблуждение — смотрите логи выше!
📊 Итоговые замеры:
⏱️ Wall-clock: 10 мин (оценка 15).
⚡️ Compute-time: 6 мин (оценка 15).
📈 Экономия: было ~45 мин GH Actions → стало 0. Запас релизов в месяц вырос с ~100 до ~250. Xcode Cloud тарифицирует CPU-время, а не ожидание сети!
Читать здесь: полная статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #ci_cd #xcodecloud #iosdev
Долгое время iOS-сборки в GitHub Actions были «черной дырой» бюджета: минута на macOS-раннере съедает 10 минут квоты (или стоит в 10 раз дороже Linux). Старый пайплайн на 90 строк YAML требовал ручного управления 6 секретами, профилями и ключами — хрупко, больно и дорого. 😭
Решение — переезд на Xcode Cloud. И это гейм-чейнджер: 25 часов compute-времени в месяц уже входят в стандартную подписку Apple Developer Program ($99/год). Релиз теперь стоит 0 минут GitHub Actions и всего ~6 минут оплачиваемого времени Apple. 💸
Главные плюсы, за которые стоит сказать «спасибо»:
✅ Managed Signing — Apple сама управляет подписью. Никаких keychain, base64, правок
pbxproj и секретов в репозитории.✅ Доставка в TestFlight настраивается галочкой в UI, без API-ключей.
✅ Кастомизация через три shell-скрипта в папке
ci_scripts (post-clone, pre-xcodebuild, post-xcodebuild): ставим Flutter, проверяем версию в теге vs pubspec.yaml, генерируем Generated.xcconfig, шлём уведомления в Telegram. 🤖Есть и минус: конфигурация уходит из Git в веб-интерфейс App Store Connect (No code-as-config). Лечится обязательным ранбуком (документацией с датой) в репозитории, иначе пайплайн превращается в «фольклор». 📝
Триггеры разделили префиксами тегов:
ios/v* — Xcode Cloud, android/v* — GitHub Actions. Обычный v* ничего не запускает — защита от случайных затрат. 🛡Путь первого успешного билда пролегал через 7 кругов ада за 6 коммитов (ни одна ошибка не была виной дизайна миграции!):
1️⃣ Права доступа к репо — помогло переключение на «New Primary Repository».
2️⃣ Устаревший Flutter тянул старый
intl (на Android замаскировалось).3️⃣ Swift Package Manager требует закоммиченный
Package.resolved — пришлось откатиться на CocoaPods.4️⃣ Ошибка «specs repository is too out-of-date» — ложный след.
5️⃣ Настоящая причина — конфликт Ruby: системный 2.6 не видел
xcodeproj из Homebrew. Лечится gem install --user-install xcodeproj. 💎6️⃣ Двойной
pod install (flutter build --config-only уже делает это сам).7️⃣ Застарелый
Podfile.lock (4 месяца!) — версии нативных SDK расходились с pubspec.lock. Локально тоже было сломано! 🤯💡 Главный урок: CI, который не запускаешь регулярно, не находит ошибки. Ошибка CocoaPods «too out-of-date» почти всегда вводит в заблуждение — смотрите логи выше!
📊 Итоговые замеры:
⏱️ Wall-clock: 10 мин (оценка 15).
⚡️ Compute-time: 6 мин (оценка 15).
📈 Экономия: было ~45 мин GH Actions → стало 0. Запас релизов в месяц вырос с ~100 до ~250. Xcode Cloud тарифицирует CPU-время, а не ожидание сети!
Читать здесь: полная статья на Хабре
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr #ci_cd #xcodecloud #iosdev
Обзор пакетов на тему Cloud Storage & Cloud Database
firebase_database 12.5.0
Официальный плагин для работы с API Firebase Database в приложениях на Flutter.
👍 Лайки: 650, 📥 Скачиваний: 176K
📅 Обновлено: 7 дней назад
https://pub.dev/packages/firebase_database
tostore 3.1.2
Современный движок данных для сценариев edge-интеллекта и распределенных систем. Он объединяет реляционные данные, векторный поиск и неструктурированную информацию в едином API.
👍 Лайки: 141, 📥 Скачиваний: 853K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/tostore
firebase_storage 13.5.0
Плагин для Flutter, обеспечивающий доступ к Firebase Cloud Storage.
👍 Лайки: 1770, 📥 Скачиваний: 660K
📅 Обновлено: 7 дней назад
https://pub.dev/packages/firebase_storage
cloud_firestore_web 5.7.3
Web-реализация Cloud Firestore для Flutter. Позволяет работать с облачной базой данных Firebase прямо в браузере.
👍 Лайки: 45, 📥 Скачиваний: 1.18M
📅 Обновлено: 7 дней назад
https://pub.dev/packages/cloud_firestore_web
cloud_firestore 6.9.0
Официальный плагин для работы с облачной базой данных Firebase.
👍 Лайки: 3780, 📥 Скачиваний: 1.15M
📅 Обновлено: 7 дней назад
https://pub.dev/packages/cloud_firestore
supabase_flutter 2.17.2
Официальный клиент Supabase для Flutter. Позволяет легко интегрировать аутентификацию, работу с базой данных, Realtime-события и хранилище файлов в ваше мобильное приложение.
👍 Лайки: 976, 📥 Скачиваний: 839K
📅 Обновлено: 17 дней назад
https://pub.dev/packages/supabase_flutter
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages #firebase_database #tostore #firebase_storage #cloud_firestore_web #cloud_firestore #supabase_flutter
firebase_database 12.5.0
Официальный плагин для работы с API Firebase Database в приложениях на Flutter.
👍 Лайки: 650, 📥 Скачиваний: 176K
📅 Обновлено: 7 дней назад
https://pub.dev/packages/firebase_database
tostore 3.1.2
Современный движок данных для сценариев edge-интеллекта и распределенных систем. Он объединяет реляционные данные, векторный поиск и неструктурированную информацию в едином API.
👍 Лайки: 141, 📥 Скачиваний: 853K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/tostore
firebase_storage 13.5.0
Плагин для Flutter, обеспечивающий доступ к Firebase Cloud Storage.
👍 Лайки: 1770, 📥 Скачиваний: 660K
📅 Обновлено: 7 дней назад
https://pub.dev/packages/firebase_storage
cloud_firestore_web 5.7.3
Web-реализация Cloud Firestore для Flutter. Позволяет работать с облачной базой данных Firebase прямо в браузере.
👍 Лайки: 45, 📥 Скачиваний: 1.18M
📅 Обновлено: 7 дней назад
https://pub.dev/packages/cloud_firestore_web
cloud_firestore 6.9.0
Официальный плагин для работы с облачной базой данных Firebase.
👍 Лайки: 3780, 📥 Скачиваний: 1.15M
📅 Обновлено: 7 дней назад
https://pub.dev/packages/cloud_firestore
supabase_flutter 2.17.2
Официальный клиент Supabase для Flutter. Позволяет легко интегрировать аутентификацию, работу с базой данных, Realtime-события и хранилище файлов в ваше мобильное приложение.
👍 Лайки: 976, 📥 Скачиваний: 839K
📅 Обновлено: 17 дней назад
https://pub.dev/packages/supabase_flutter
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages #firebase_database #tostore #firebase_storage #cloud_firestore_web #cloud_firestore #supabase_flutter
👣 Primary constructors в Dart: почему путь к простоте был таким сложным?
В Dart 3.13 наконец-то появилась долгожданная фича — primary constructors. Теперь можно объявить класс с полями и конструктором буквально в одну строку. Звучит просто, правда? Но за этим «сахаром» стоит история долгих споров и компромиссов.
Боб Нюстром (Bob Nystrom) подробно разобрал, через что пришлось пройти команде языка. Давайте выделим самое интересное 🧐
Зачем вообще нужен синтаксический сахар?
Он не добавляет новых возможностей, но оправдан в трех случаях:
🔹 Когда новый способ объективно лучше старого (как отмена обязательного
в Dart 2.0).
🔹 Когда он сильно упрощает частые сценарии (как появление настоящих
).
🔹 Когда делает намерение кода более явным.
Главная боль: «Синтаксический клиф»
Представьте: вы написали класс через primary constructor, а потом захотели добавить логику в конструктор. Если синтаксис не позволяет добавить тело, вам придется переписывать всё на старый, многострочный вариант. Это и есть клиф — резкий обрыв удобства.
Чтобы этого избежать, в Dart добавили блоки
. Теперь можно расширить primary constructor, не ломая структуру:
И еще одна приятная мелочь: ключевое слово
Раньше для именованных конструкторов нужно было повторять имя класса. Если имя длинное — это боль. Теперь можно использовать
:
Для фабрик тоже стало короче:
Это не просто экономия символов. Это решение проблем с
и расширениями, где имя класса не всегда доступно.
💡 Итог
Primary constructors — это пример того, как язык может развиваться эволюционно. Команда Dart не просто добавила фичу, а продумала защиту от будущих проблем. Код стал чище, а работа с ним — приятнее.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #hardworkerFlutter #code #dev
В Dart 3.13 наконец-то появилась долгожданная фича — primary constructors. Теперь можно объявить класс с полями и конструктором буквально в одну строку. Звучит просто, правда? Но за этим «сахаром» стоит история долгих споров и компромиссов.
Боб Нюстром (Bob Nystrom) подробно разобрал, через что пришлось пройти команде языка. Давайте выделим самое интересное 🧐
Зачем вообще нужен синтаксический сахар?
Он не добавляет новых возможностей, но оправдан в трех случаях:
🔹 Когда новый способ объективно лучше старого (как отмена обязательного
new
в Dart 2.0).
🔹 Когда он сильно упрощает частые сценарии (как появление настоящих
enum
).
🔹 Когда делает намерение кода более явным.
Главная боль: «Синтаксический клиф»
Представьте: вы написали класс через primary constructor, а потом захотели добавить логику в конструктор. Если синтаксис не позволяет добавить тело, вам придется переписывать всё на старый, многострочный вариант. Это и есть клиф — резкий обрыв удобства.
Чтобы этого избежать, в Dart добавили блоки
this { ... }. Теперь можно расширить primary constructor, не ломая структуру:
class FormatterOptions(
final int indent = 0,
final int pageWidth = 80,
) {
this {
log.write('Created options.');
}
}
И еще одна приятная мелочь: ключевое слово
new
Раньше для именованных конструкторов нужно было повторять имя класса. Если имя длинное — это боль. Теперь можно использовать
new
:
class LongClassName {
new(); // безымянный
new create(); // именованный
}Для фабрик тоже стало короче:
class AnotherLongClass {
factory () { ... }
factory create() { ... }
}Это не просто экономия символов. Это решение проблем с
typedef
и расширениями, где имя класса не всегда доступно.
💡 Итог
Primary constructors — это пример того, как язык может развиваться эволюционно. Команда Dart не просто добавила фичу, а продумала защиту от будущих проблем. Код стал чище, а работа с ним — приятнее.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #hardworkerFlutter #code #dev
👍1
🔥 Топ-6 лучших обновлённых пакетов за последние 24 часа
Katana CLI 3.25.0
CLI-инструмент для фреймворка Masamune (Flutter/Dart). Добавлены конфигурации, специфичные для окружения (dev/prod), и улучшена система управления флейворами.
👍 Лайки: 2, 📥 Скачиваний: 4.9К
https://pub.dev/packages/katana_cli
lifecycle 1.0.0
Инструмент для управления состоянием виджетов, объединяющий состояние приложения, маршруты и скролл-вьюпорты в единый неизменяемый снапшот. Полный редизайн API с отказом от старых обсерверов в пользу компонуемого дерева на базе LifecycleController и LifecycleScope.
👍 Лайки: 80, 📥 Скачиваний: 4.1К
https://pub.dev/packages/lifecycle
Ack 1.2.0
Библиотека schema validation для Dart/Flutter. Введен AckModelAdapter для генерируемых моделей, добавлена возможность валидации с сохранением исходного значения (Ack.preserveBoundary) и улучшена обработка ошибок на нативных и веб-платформах.
👍 Лайки: 57, 📥 Скачиваний: 1.2К
https://pub.dev/packages/ack
sqflite_tizen 0.1.6
Реализация SQLite для платформы Tizen. Обновление для поддержки Flutter 3.44 и Dart 3.12, а также обновление зависимости sqflite до версии 2.4.3.
👍 Лайки: 1, 📥 Скачиваний: 5.4К
https://pub.dev/packages/sqflite_tizen
not_static_icons 0.53.0
Пакет для добавления плавных анимаций иконок (на базе Lucide) без использования Rive или Lottie. В релизе добавлено 53 новых иконки с уникальными анимациями, включая семейства gallery, gamepad, Git, globe, grid и grip.
👍 Лайки: 52, 📥 Скачиваний: 1.3К
https://pub.dev/packages/not_static_icons
Saropa Lints 15.2.8
Пакет для поиска утечек памяти и ошибок рантайма, которые пропускают стандартные линтеры. Реализована «осведомленная о стоимости» система сброса правил при высокой нагрузке на память: отключаются ресурсоемкие правила, а в панели конфигурации появился раздел «Shed rules» с пояснениями.
👍 Лайки: 10, 📥 Скачиваний: 6.6К
https://pub.dev/packages/saropa_lints
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #katana_cli #lifecycle #ack #sqflite_tizen #not_static_icons #saropa_lints
Katana CLI 3.25.0
CLI-инструмент для фреймворка Masamune (Flutter/Dart). Добавлены конфигурации, специфичные для окружения (dev/prod), и улучшена система управления флейворами.
👍 Лайки: 2, 📥 Скачиваний: 4.9К
https://pub.dev/packages/katana_cli
lifecycle 1.0.0
Инструмент для управления состоянием виджетов, объединяющий состояние приложения, маршруты и скролл-вьюпорты в единый неизменяемый снапшот. Полный редизайн API с отказом от старых обсерверов в пользу компонуемого дерева на базе LifecycleController и LifecycleScope.
👍 Лайки: 80, 📥 Скачиваний: 4.1К
https://pub.dev/packages/lifecycle
Ack 1.2.0
Библиотека schema validation для Dart/Flutter. Введен AckModelAdapter для генерируемых моделей, добавлена возможность валидации с сохранением исходного значения (Ack.preserveBoundary) и улучшена обработка ошибок на нативных и веб-платформах.
👍 Лайки: 57, 📥 Скачиваний: 1.2К
https://pub.dev/packages/ack
sqflite_tizen 0.1.6
Реализация SQLite для платформы Tizen. Обновление для поддержки Flutter 3.44 и Dart 3.12, а также обновление зависимости sqflite до версии 2.4.3.
👍 Лайки: 1, 📥 Скачиваний: 5.4К
https://pub.dev/packages/sqflite_tizen
not_static_icons 0.53.0
Пакет для добавления плавных анимаций иконок (на базе Lucide) без использования Rive или Lottie. В релизе добавлено 53 новых иконки с уникальными анимациями, включая семейства gallery, gamepad, Git, globe, grid и grip.
👍 Лайки: 52, 📥 Скачиваний: 1.3К
https://pub.dev/packages/not_static_icons
Saropa Lints 15.2.8
Пакет для поиска утечек памяти и ошибок рантайма, которые пропускают стандартные линтеры. Реализована «осведомленная о стоимости» система сброса правил при высокой нагрузке на память: отключаются ресурсоемкие правила, а в панели конфигурации появился раздел «Shed rules» с пояснениями.
👍 Лайки: 10, 📥 Скачиваний: 6.6К
https://pub.dev/packages/saropa_lints
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #katana_cli #lifecycle #ack #sqflite_tizen #not_static_icons #saropa_lints
❤1
Обзор пакетов на тему ChatGPT, LLM & Generative AI
dart_mcp 0.5.2
Пакет позволяет легко создавать серверы и клиенты для протокола Model Context Protocol (MCP) в экосистеме Dart. Он поддерживает инструменты, ресурсы, промпты и гибкую архитектуру через миксины.
👍 Лайки: 82, 📥 Скачиваний: 385K
📅 Обновлено: 2 месяца назад
https://pub.dev/packages/dart_mcp
flutter_gemma 1.7.0
Плагин позволяет запускать LLM (Gemma, Qwen, DeepSeek, Phi и др.) прямо на устройстве пользователя без необходимости подключения к серверам. Поддерживает мультимодальность, включая текст, изображения и аудио, а также работу через NPU/GPU.
👍 Лайки: 427, 📥 Скачиваний: 25.2K
📅 Обновлено: 2 дня назад
https://pub.dev/packages/flutter_gemma
dart_openai 8.0.0
Неофициальный клиент обеспечивает типизированный доступ ко всем ключевым API OpenAI, включая Chat Completions, Realtime и Batch. Пакет работает на всех платформах и поддерживает автоматические ретраи с экспоненциальным откатом.
👍 Лайки: 575, 📥 Скачиваний: 17.6K
📅 Обновлено: 8 дней назад
https://pub.dev/packages/dart_openai
firebase_ai 4.0.0
Официальный плагин для интеграции генеративных ИИ-моделей, таких как Gemini и Imagen, в Flutter-приложения. Он предоставляет прямой доступ к возможностям Firebase AI Logic.
👍 Лайки: 122, 📥 Скачиваний: 72.8K
📅 Обновлено: 8 дней назад
https://pub.dev/packages/firebase_ai
mcp_dart 2.4.1
SDK реализует полный набор функций протокола Model Context Protocol (MCP) для ролей клиента, сервера и хоста. Поддерживает актуальную спецификацию MCP 2026-07-28 с автоматическим фолбэком на предыдущие версии.
👍 Лайки: 76, 📥 Скачиваний: 264K
📅 Обновлено: 13 дней назад
https://pub.dev/packages/mcp_dart
langchain 0.9.0
Неофициальный порт популярного фреймворка LangChain для экосистемы Dart упрощает работу с языковыми моделями. Пакет предоставляет готовые компоненты для чат-ботов, RAG, агентов и суммаризации.
👍 Лайки: 301, 📥 Скачиваний: 2.8K
📅 Обновлено: 5 дней назад
https://pub.dev/packages/langchain
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages #dart_mcp #flutter_gemma #dart_openai #firebase_ai #mcp_dart #langchain
dart_mcp 0.5.2
Пакет позволяет легко создавать серверы и клиенты для протокола Model Context Protocol (MCP) в экосистеме Dart. Он поддерживает инструменты, ресурсы, промпты и гибкую архитектуру через миксины.
👍 Лайки: 82, 📥 Скачиваний: 385K
📅 Обновлено: 2 месяца назад
https://pub.dev/packages/dart_mcp
flutter_gemma 1.7.0
Плагин позволяет запускать LLM (Gemma, Qwen, DeepSeek, Phi и др.) прямо на устройстве пользователя без необходимости подключения к серверам. Поддерживает мультимодальность, включая текст, изображения и аудио, а также работу через NPU/GPU.
👍 Лайки: 427, 📥 Скачиваний: 25.2K
📅 Обновлено: 2 дня назад
https://pub.dev/packages/flutter_gemma
dart_openai 8.0.0
Неофициальный клиент обеспечивает типизированный доступ ко всем ключевым API OpenAI, включая Chat Completions, Realtime и Batch. Пакет работает на всех платформах и поддерживает автоматические ретраи с экспоненциальным откатом.
👍 Лайки: 575, 📥 Скачиваний: 17.6K
📅 Обновлено: 8 дней назад
https://pub.dev/packages/dart_openai
firebase_ai 4.0.0
Официальный плагин для интеграции генеративных ИИ-моделей, таких как Gemini и Imagen, в Flutter-приложения. Он предоставляет прямой доступ к возможностям Firebase AI Logic.
👍 Лайки: 122, 📥 Скачиваний: 72.8K
📅 Обновлено: 8 дней назад
https://pub.dev/packages/firebase_ai
mcp_dart 2.4.1
SDK реализует полный набор функций протокола Model Context Protocol (MCP) для ролей клиента, сервера и хоста. Поддерживает актуальную спецификацию MCP 2026-07-28 с автоматическим фолбэком на предыдущие версии.
👍 Лайки: 76, 📥 Скачиваний: 264K
📅 Обновлено: 13 дней назад
https://pub.dev/packages/mcp_dart
langchain 0.9.0
Неофициальный порт популярного фреймворка LangChain для экосистемы Dart упрощает работу с языковыми моделями. Пакет предоставляет готовые компоненты для чат-ботов, RAG, агентов и суммаризации.
👍 Лайки: 301, 📥 Скачиваний: 2.8K
📅 Обновлено: 5 дней назад
https://pub.dev/packages/langchain
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages #dart_mcp #flutter_gemma #dart_openai #firebase_ai #mcp_dart #langchain
VS Code стал ещё умнее для Flutter-разработчиков! 🚀
Плагин Dart Code (v3.142) получил свежее обновление, которое заметно упрощает жизнь при отладке. Главная фишка — теперь уведомления в редакторе поддерживают deep-link в DevTools.
Звучит скучно? А вот и нет! Представьте: ваш виджет переполняется (overflow), и вместо того чтобы гадать, где именно проблема, вы просто кликаете по уведомлению в VS Code — и мгновенно оказываетесь в нужном месте DevTools. Это экономит кучу времени и нервов при поиске багов в layout-ах. 🛠
Кроме того, в релизе собрано множество минорных исправлений, которые делают работу с кодом ещё плавнее.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #ohmyflutter #vscode #devtools
Плагин Dart Code (v3.142) получил свежее обновление, которое заметно упрощает жизнь при отладке. Главная фишка — теперь уведомления в редакторе поддерживают deep-link в DevTools.
Звучит скучно? А вот и нет! Представьте: ваш виджет переполняется (overflow), и вместо того чтобы гадать, где именно проблема, вы просто кликаете по уведомлению в VS Code — и мгновенно оказываетесь в нужном месте DevTools. Это экономит кучу времени и нервов при поиске багов в layout-ах. 🛠
Кроме того, в релизе собрано множество минорных исправлений, которые делают работу с кодом ещё плавнее.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #ohmyflutter #vscode #devtools
❤2🔥1
🔥 Топ обновлённых пакетов за последние 24 часа
test_api 0.7.14
Минимальный пакет для написания тестов в Dart. Добавлена поддержка нативного CLI-компилятора для рантаймов vmAsan, vmMsan и vmTsan, а также экспорт класса TestFailure из scaffolding.dart.
👍 Лайки: 24, 📥 Скачиваний: 11.4M
https://pub.dev/packages/test_api
flutter_gen_ai_chat_ui 2.16.1
UI-кит для чатов с ИИ. Исправлена ошибка, из-за которой список сообщений «молча прыгал» вперед в начале стриминга ответа. Теперь автопрокрутка корректно удерживает позицию, не сбрасывая фиксацию (pin) при задержке.
👍 Лайки: 100, 📥 Скачиваний: 1.9K
https://pub.dev/packages/flutter_gen_ai_chat_ui
purchases_ui_flutter 10.11.0
Пакет для интеграции paywalls и Customer Center от RevenueCat в Flutter-приложения. В новой версии добавлена поддержка установки ID устройства Singular (setSingularDeviceID) для аналитики.
👍 Лайки: 88, 📥 Скачиваний: 139K
https://pub.dev/packages/purchases_ui_flutter
purchases_flutter 10.11.0
Популярный пакет для управления подписками в Flutter (RevenueCat). Добавлена поддержка метода setSingularDeviceID для интеграции с аналитикой Singular, а также внесены мелкие технические улучшения.
👍 Лайки: 913, 📥 Скачиваний: 429K
https://pub.dev/packages/purchases_flutter
grinder 0.5.7
Инструмент для автоматизации задач в Dart (сборка, тесты, деплой). Добавлены асинхронные методы, включая runProcessAsync() и PubTools.buildAsync(). Убраны дублирующиеся стек-трейсы при ошибках сборки, теперь бросается исключение, если не удается найти Dart SDK при запуске бинарных файлов.
👍 Лайки: 116, 📥 Скачиваний: 148K
https://pub.dev/packages/grinder
test 1.32.0
Стандартный пакет для тестирования в Dart. Исправлены утечки секретов и файлов при запуске браузерных и Node.js тестов. Добавлена поддержка переменных окружения DART_TEST_REPORTER, улучшена работа с компиляторами vm-asan, vm-msan, vm-tsan и исправлены гонки в сборке покрытия кода в Chrome.
👍 Лайки: 626, 📥 Скачиваний: 10.7M
https://pub.dev/packages/test
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #test_api #flutter_gen_ai_chat_ui #purchases_ui_flutter #purchases_flutter #grinder #test
test_api 0.7.14
Минимальный пакет для написания тестов в Dart. Добавлена поддержка нативного CLI-компилятора для рантаймов vmAsan, vmMsan и vmTsan, а также экспорт класса TestFailure из scaffolding.dart.
👍 Лайки: 24, 📥 Скачиваний: 11.4M
https://pub.dev/packages/test_api
flutter_gen_ai_chat_ui 2.16.1
UI-кит для чатов с ИИ. Исправлена ошибка, из-за которой список сообщений «молча прыгал» вперед в начале стриминга ответа. Теперь автопрокрутка корректно удерживает позицию, не сбрасывая фиксацию (pin) при задержке.
👍 Лайки: 100, 📥 Скачиваний: 1.9K
https://pub.dev/packages/flutter_gen_ai_chat_ui
purchases_ui_flutter 10.11.0
Пакет для интеграции paywalls и Customer Center от RevenueCat в Flutter-приложения. В новой версии добавлена поддержка установки ID устройства Singular (setSingularDeviceID) для аналитики.
👍 Лайки: 88, 📥 Скачиваний: 139K
https://pub.dev/packages/purchases_ui_flutter
purchases_flutter 10.11.0
Популярный пакет для управления подписками в Flutter (RevenueCat). Добавлена поддержка метода setSingularDeviceID для интеграции с аналитикой Singular, а также внесены мелкие технические улучшения.
👍 Лайки: 913, 📥 Скачиваний: 429K
https://pub.dev/packages/purchases_flutter
grinder 0.5.7
Инструмент для автоматизации задач в Dart (сборка, тесты, деплой). Добавлены асинхронные методы, включая runProcessAsync() и PubTools.buildAsync(). Убраны дублирующиеся стек-трейсы при ошибках сборки, теперь бросается исключение, если не удается найти Dart SDK при запуске бинарных файлов.
👍 Лайки: 116, 📥 Скачиваний: 148K
https://pub.dev/packages/grinder
test 1.32.0
Стандартный пакет для тестирования в Dart. Исправлены утечки секретов и файлов при запуске браузерных и Node.js тестов. Добавлена поддержка переменных окружения DART_TEST_REPORTER, улучшена работа с компиляторами vm-asan, vm-msan, vm-tsan и исправлены гонки в сборке покрытия кода в Chrome.
👍 Лайки: 626, 📥 Скачиваний: 10.7M
https://pub.dev/packages/test
Поддержать канал
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #test_api #flutter_gen_ai_chat_ui #purchases_ui_flutter #purchases_flutter #grinder #test
👍1