en
Feedback
Flutter Pulse

Flutter Pulse

Open in Telegram

На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.

Show more
1 019
Subscribers
-124 hours
-27 days
-830 days

Data loading in progress...

Attracting Subscribers
August '26
August '26
+6
in 0 channels
July '26
+18
in 0 channels
Get PRO
June '26
+16
in 0 channels
Get PRO
May '26
+14
in 0 channels
Get PRO
April '26
+40
in 1 channels
Get PRO
March '26
+74
in 0 channels
Get PRO
February '26
+57
in 1 channels
Get PRO
January '26
+66
in 0 channels
Get PRO
December '25
+168
in 0 channels
Get PRO
November '25
+75
in 1 channels
Get PRO
October '25
+65
in 1 channels
Get PRO
September '25
+93
in 1 channels
Get PRO
August '25
+32
in 0 channels
Get PRO
July '25
+81
in 0 channels
Get PRO
June '25
+71
in 0 channels
Get PRO
May '25
+107
in 0 channels
Get PRO
April '25
+284
in 0 channels
Get PRO
March '250
in 1 channels
Get PRO
February '250
in 1 channels
Get PRO
January '25
+4
in 0 channels
Date
Subscriber Growth
Mentions
Channels
26 August0
25 August0
24 August+1
23 August0
22 August0
21 August0
20 August0
19 August0
18 August+1
17 August0
16 August0
15 August0
14 August0
13 August0
12 August+1
11 August+1
10 August0
09 August0
08 August0
07 August0
06 August+1
05 August+1
04 August0
03 August0
02 August0
01 August0
Channel Posts
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

2
Собираем 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 через 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
221
3
Самые лучшие обновлённые пакеты за последние 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
208
4
No text...
187
5
Primary Constructors в Dart: долгий путь к элегантному синтаксису ✨ Вы когда-нибудь задумывались, почему такая, казалось бы, очевидная фича, как primary constructors, появилась в Dart не сразу? 🤔 Команда языка потратила огромное количество времени и итераций, прежде чем дизайн стал выглядеть действительно надёжным и «дартовым». Боб Нюстром (Bob Nystrom) поделился внутренней кухней этого процесса: какие подводные камни встречались, почему первые прототипы отбрасывались и как в итоге родилось то, чем мы пользуемся сейчас. Это отличный кейс: даже для простых вещей иногда нужно пройти через десятки «нет», чтобы сказать одно правильное «да». Читать историю эволюции синтаксиса — значит лучше понять философию языка. 🧠💡 Полную новость читайте здесь FlutterPulse — канал о мире Flutter! #flutter #dart #FlutterPulse #FlutterPulseNews #FlutterForDev #languageDesign #dart3 #cleanCode
213
6
Самые лучшие обновлённые пакеты за последние 24 часа serverpod_database 4.0.0-beta.4 Внутренний пакет фреймворка Serverpod (БД/миграции). Не для прямого использования. BREAKING: переработана иерархия исключений клиента (новый ServerpodClientHttpException) и БД (специфичные ошибки constraints, locked). Добавлена опциональная httpOnly cookie-авторизация для веба. Поддержка deferred/deferrable FK для отложенной проверки в транзакциях. Генерация явных FK-колонок через field=. Стабильные префиксы импортов в генерируемом коде. Фиксы миграций, форматтера и TUI. 👍 Лайки: 0, 📥 Скачиваний: 12.3K https://pub.dev/packages/serverpod_database saropa_lints 15.2.2 Линтер, ловящий утечки памяти, дыры в безопасности и краши, которые пропускают стандартные инструменты. Работает в паре с VS Code-расширением (Health Score, Security Posture, триаж правил, анализ зависимостей). CLI scan: --min-impact (фильтр по реальному влиянию), --fail-on (выход с кодом 1 при ошибках заданного уровня), --json-file-path (прямой вывод JSON), --quiet (тихий режим для CI). Исправлен лимит max_issues для панели Problems. 👍 Лайки: 9, 📥 Скачиваний: 6.3K https://pub.dev/packages/saropa_lints macro_kit 0.7.4 Мгновенная генерация кода для Dart без build_runner (Ctrl+S и готово). ComputeMacro: поддержка форсированной пересборки (always_rebuild_on_connect) и файловых зависимостей в deps (изменение assets/data.json триггерит обновление). CLI: команда rebuild [target] для ручной регенерации. Фикс: тела макросов выполняются с рабочей директорией в корне проекта (работают относительные пути). 👍 Лайки: 47, 📥 Скачиваний: 277 https://pub.dev/packages/macro_kit layrz_models 3.31.1 SDK для работы с API Layrz: превращает ответы сервера в Dart-объекты для Flutter. Обновлён GQL-фрагмент User. Исправлено именование brickhouseUsers. 👍 Лайки: 3, 📥 Скачиваний: 10.1K https://pub.dev/packages/layrz_models qrscan 1.2.4 Минималистичный сканер QR/штрих-кодов для Flutter. Открывает камеру, декодирует, возвращает строку, закрывается. Без виджетов, оверлеев и лишних зависимостей (CameraX/ZXing на Android, AVFoundation/Vision на iOS). В обновлении: добавлен референс-утилита scan_handle.dart для парсинга популярных форматов: URL, Wi-Fi, мед. направления, номера пакетов и EAN. Плагин по-прежнему отдаёт только сырую строку. 👍 Лайки: 391, 📥 Скачиваний: 312 https://pub.dev/packages/qrscan serverpod_embedded_postgres 4.0.0-beta.4 Запускает настоящий PostgreSQL (с PostGIS и pgvector) как дочерний процесс для локальной разработки Serverpod. Без Docker, конфликтов портов и долгих билдов — бинарники качаются в кэш и стартуют за <1 сек. BREAKING: иерархия исключений БД переработана (конкретные ошибки unique/foreign key, locked). BREAKING: исключения клиента рефакторены: сетевые ошибки в ServerpodClientHttpException. Исправлено восстановление входящих FK при регенерации таблиц. Добавлены флаги deferred / deferrable для отношений. Стабильные префиксы импортов в генерируемом коде. 👍 Лайки: 0, 📥 Скачиваний: 12.2K https://pub.dev/packages/serverpod_embedded_postgres Поддержать канал FlutterPulse — канал о мире Flutter! #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #serverpod_database #saropa_lints #macro_kit #layrz_models #qrscan #serverpod_embedded_postgres
250
7
No text...
223
8
Новые пакеты за неделю curved_roadmap — виджет для красивых извилистых дорожек прогресса (онбординг, таймлайны, обучающие пути). ✅ Чистый Dart/Flutter, работает на всех 6 платформах. 🎨 Поддержка градиентов, анимаций, маркеров, подписей и разных стилей кривых (S-образные, зигзаги, змеевики). 📦 Легко темизируется через ThemeExtension. 👍 Лайки: 2, 📥 Скачиваний: 0 https://pub.dev/packages/curved_roadmap deeplink_setup — CLI для Flutter, который избавляет от боли с диплинками. Генерирует assetlinks.json и apple-app-site-association, правит нативные проекты (Android App Links / iOS Universal Links) и валидирует всё локально и на проде. Главная фича — проверка кэша Apple CDN (AASA), чтобы сразу видеть, почему ссылки не открываются. 👍 Лайки: 2, 📥 Скачиваний: 0 https://pub.dev/packages/deeplink_setup seed_ui v0.6.3 — темизируемый UI‑кит для Flutter на дизайн‑токенах. Библиотека даёт готовые компоненты (Button, Input, таблицы, нотификации, модалки, дропдауны и др.) без жёсткой привязки к Material. Вся тема строится от пары «seed»-цветов: поменяли colorPrimary — перекрасилось всё приложение. Фишки: токен‑драйвен теминг (лайт/дарк из коробки), глобальные message.success() и notification.error() без BuildContext, виджеты на чистом flutter/widgets.dart — работают и в Material, и в Cupertino, богатый набор: от Button и Input до Tree, SortableList, Tour и Upload. 👍 Лайки: 1, 📥 Скачиваний: 80 https://pub.dev/packages/seed_ui fyral_comms — готовый UI‑кит для чатов и командной связи на Flutter. ✨ Фишки: адаптивный split‑screen (сайдбар + диалог) на планшетах, морфинг FAB в поле ввода с анимацией, единые градиентные заголовки и подсветка выбранного чата, полная поддержка светлой/тёмной темы без доп. настроек. 📦 Установка: flutter pub add fyral_comms 👍 Лайки: 1, 📥 Скачиваний: 0 https://pub.dev/packages/fyral_comms ezyrevenue — Flutter SDK для кроссплатформенных in-app подписок (iOS/Android). Один API-ключ, одна инициализация — библиотека сама управляет авторизацией, кэшем сессий, офферами и покупками. 👍 Лайки: 1, 📥 Скачиваний: 0 https://pub.dev/packages/ezyrevenue flutter_pruner — инструмент для безопасной семантической очистки Dart/Flutter-проектов. Находит недостижимый код, неиспользуемые ассеты и байт-в-байт дубликаты. Удаляет только то, что позволяет настроенная политика безопасности (есть dry-run, карантин файлов и откат). 👍 Лайки: 4, 📥 Скачиваний: 0 https://pub.dev/packages/flutter_pruner Поддержать канал FlutterPulse — канал о мире Flutter! #curved_roadmap #deeplink_setup #seed_ui #fyral_comms #ezyrevenue #flutter_pruner #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages
347
9
No text...
258
10
Самые лучшие обновлённые пакеты за последние 24 часа restart_app 1.9.1 — перезапуск Flutter-приложения из Dart одним вызовом на всех платформах. Что нового: исправлена сборка на Android с AGP 9 (ошибка Could not find method kotlin()). Плагин теперь корректно определяет наличие Kotlin-тулчейна вместо проверки мажорной версии AGP. Добавлен CI-тест на AGP 9.0/9.1. 👍 Лайки: 523, 📥 Скачиваний: 135K pub.dev/packages/restart_app flutter_gemma 1.5.9 — запуск LLM (Gemma, Qwen, DeepSeek, Phi, SmolLM и др.) на устройстве: iOS, Android, Web, Desktop. Поддержка мультимодальности, function calling, RAG, агентов и голоса (STT/TTS) офлайн. Что нового: добавлен getActiveModel() с параметрами preferredVisionBackend и preferredAudioBackend — теперь можно форсировать бэкенд (CPU/GPU/NPU) под конкретный энкодер. 👍 Лайки: 421, 📥 Скачиваний: 24.5K pub.dev/packages/flutter_gemma better_player 0.4.3 — продвинутый видеоплеер для Flutter (HLS, DASH, DRM, PiP, кэш, плейлисты). Что нового: полностью переработана документация (стиль, грамматика, алерты). Добавлена продвинутая доступность (a11y): локализованные подписи и семантика для контролов и прогресс-бара. Исправлен URL видео на главной странице примера. 👍 Лайки: 1.3K, 📥 Скачиваний: 3.2K pub.dev/packages/better_player otp_text_field 1.1.4 — пакет для создания полей ввода OTP-кодов в Flutter. Что нового: исправлена вставка из буфера обмена, убран баг с выделением курсора при фокусе, добавлены тесты и обновлены зависимости. 👍 Лайки: 278, 📥 Скачиваний: 32.5K pub.dev/packages/otp_text_field firestore_cache 2.21.0 — плагин для Flutter, ускоряющий работу с Firestore: сначала читает данные из кэша, потом обновляет с сервера (по таймстампу в документе-маркере). Что нового: внутренние улучшения и исправления. 👍 Лайки: 107, 📥 Скачиваний: 2.1K pub.dev/packages/firestore_cache device_marketing_names 2.0.3 — пакет для Flutter/Dart, превращающий технические коды устройств (вроде iPhone13,4 или SM-G980F) в маркетинговые названия (iPhone 12 Pro Max, Galaxy S20). Работает офлайн, поддерживает Android, iOS и браузеры. Что нового: актуальна база устройств на 28.06.2026 (источник: device_identifiers) и обновлены зависимости. 👍 Лайки: 46, 📥 Скачиваний: 37.9K pub.dev/packages/device_marketing_names Поддержать канал FlutterPulse — канал о мире Flutter! #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #restart_app #flutter_gemma #better_player #otp_text_field #firestore_cache #device_marketing_names
265
11
No text...
239
12
Самые лучшие обновлённые пакеты за последние 24 часа flutter_gemma 1.5.6 — плагин для запуска LLM (Gemma, Qwen, DeepSeek, Phi, SmolLM и др.) прямо на устройстве во Flutter. Поддержка iOS, Android, Web, Desktop, мультимодальность, function calling, RAG, агенты и голос (STT/TTS) офлайн. 🐛 Исправлена утечка «сырого» JSON вызовов инструментов в текстовый поток при стриминге Gemma 4. ❤️ 421 лайк | 📥 24.4К скачиваний pub.dev/packages/flutter_gemma flutter_barcode_sdk 5.1.2 — кроссплатформенный плагин для сканирования и распознавания штрих-кодов (1D/2D) на базе Dynamsoft Barcode Reader. Работает на Android, iOS, Web, Windows, Linux, macOS. Исправлена сборка под macOS. Теперь зависимость flutter_barcode_sdk_macos ^1.0.2 автоматически подкладывает нужные ресурсы Dynamsoft (Templates/Models) через post_install в Podfile — ошибка InitSettings error -10030 больше не воспроизводится. Обновлён README с готовым сниппетом для настройки. 👍 150 лайков | 📥 1.6К скачиваний pub.dev/packages/flutter_barcode_sdk Melos 8.3.0 — инструмент для управления Dart-монорепозиториями (аналог Lerna), упрощающий версионирование, публикацию и запуск скриптов в мультипакетных проектах. 🔧 Исправления: IDE-файлы теперь учитывают PUB_CACHE; флаг --yes работает для ручного версионирования. ✨ Фича: добавлен опциональный режим фиксированного версионирования (fixed versioning). ⭐ 939 лайков | 📥 1.36М скачиваний pub.dev/packages/melos audio_manager 0.9.2 — плагин для воспроизведения музыки с уведомлениями (iOS: AVPlayer, Android: MediaPlayer). 🌐 Web: переписан на package:web (HTMLAudioElement) — исправлен краш, добавлены события, работают локальные ассеты в релизе. 🤖 Android 13+: запрос POST_NOTIFICATIONS в рантайме, фикс обложки в уведомлении, утечки stop в релизе, очистка карточки при выходе. 🍎 iOS: миграция на UIScene, фикс паузы, громкости и отображения уведомлений. ⚙️ Обновлён тулчейн, синхронизирован timeupdate/setVolume, рефакторинг примера + CI. ⭐ 150 лайков | 📥 264 скачивания pub.dev/packages/audio_manager flutter_chen_common 5.5.0 — «швейцарский нож» для Flutter-разработки: темы, сеть (с ретраями и токенами), логирование в файлы, умные списки, тосты без контекста и UI-компоненты (марки, попапы, драггера). 🔄 Обновление: зависимости обновлены до актуальных стабильных версий. 👍 25 лайков | 📥 548 скачиваний pub.dev/packages/flutter_chen_common multi_dropdown 3.2.2 — мощный виджет мультиселекта для Flutter с поиском, валидацией, контроллером и группировкой. 🔓 Лицензия изменена с GPL-3.0 на MIT — теперь свободно используйте в коммерческих проектах. 🐛 Фикс краша на Flutter 3.47+: устранена ошибка «No Material widget found» при открытии дропдауна. ⚙️ Исправлена CI-валидация при публикации. 👍 385 лайков | 📥 38К скачиваний pub.dev/packages/multi_dropdown FlutterPulse — канал о мире Flutter! Поддержать канал #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #flutter_gemma #flutter_barcode_sdk #melos #audio_manager #flutter_chen_common #multi_dropdown
268
13
No text...
258
14
Самые лучшие обновлённые пакеты за последние 24 часа flutter_chen_refresh 4.0.0 — пакет для pull-to-refresh и бесконечной прокрутки (ListView, GridView, Slivers) с поддержкой двухуровневого обновления, горизонтального режима и гибкой настройки физики скролла. Исправлена перепривязка контроллера и гонки при одновременном refresh/load. Улучшена физика скролла, переходы двухуровневого обновления и безопасность асинхронного жизненного цикла. Сохраняются настройки ScrollView, добавлена поддержка shrink-wrapped sliver-лейаутов. Починены утечки ресурсов индикаторов и обработка обновлений конфигурации. Лайки: 13, Скачиваний: 198 pub.dev/packages/flutter_chen_refresh dart_pdf_editor 3.5.1 — нативный PDF-вьювер и редактор для Flutter (iOS, Android, Web, Desktop) без платформовых вью и нативных библиотек. Исправление: устранён рендер маскированных изображений в чёрные блоки на Impeller (iOS/macOS). Теперь soft-mask композитинг корректно применяется на границе слоя. Лайки: 19, Скачиваний: 6.8K pub.dev/packages/dart_pdf_editor gg_version 5.3.0 — утилита для единого версионирования Dart-пакетов. Обновлён до Dart 3.13, чистка заголовков копирайта, настроен пайплайн quick-check. Лайки: 1, Скачиваний: 10.8K pub.dev/packages/gg_version flutter_inapp_purchase 10.3.1 — плагин для встроенных покупок (iOS/Android) по стандарту OpenIAP. Обновлены нативные ядра: Google Play Billing 3.3.1, Apple StoreKit 3.2.1. Укреплена совместимость с SDK и обработка ответов IAPKit. Добавлен версионированный набор тестов на соответствие спецификации (исправлены баги с entitlements). Обновлена документация: живая диаграмма экосистемы, страница миграции. Лайки: 442, Скачиваний: 7.6K pub.dev/packages/flutter_inapp_purchase ApolloVM 2.27.0 — переносимая VM (Dart, Java, Kotlin, Go, C#, JS/TS, Lua, Python) для интерпретации, кросstranspilation и JIT-компиляции в Wasm (<10 Мб). Dart-сеттеры (set name(v) {…}) — парсинг, исполнение, генерация кода и компиляция в Wasm. Остальные таргеты выбрасывают UnsupportedSyntaxError. Фикс потери геттеров при трансляции в Python, Go и Lua — аксессоры больше не исчезают. Лайки: 55, Скачиваний: 4.6K pub.dev/packages/apollovm gg_publish 4.4.0 — инструменты для публикации Dart-пакетов (версионирование, проверки). Обновлён до Dart 3.13 + автофиксы, переработаны заголовки копирайта, настроен пайплайн quick-check. Лайки: 1, Скачиваний: 11.7K pub.dev/packages/gg_publish FlutterPulse — канал о мире Flutter! Поддержать канал #flutter_chen_refresh #dart_pdf_editor #gg_version #flutter_inapp_purchase #apollovm #gg_publish #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
332
15
No text...
259
16
🎯 Dart 3.13 вышел — и главное изменение заметят практически все Flutter-разработчики 12 августа вышел Dart 3.13. Главная фишка релиза — Primary Constructors. Теперь вместо привычного: class Point { int x; int y; Point(this.x, this.y); } можно писать: class Point(var int x, var int y); Меньше кода — та же семантика. 🧩 А если нужен initializer или body? Можно добавить this body: class Point(var int x, var int y) { this : assert(x >= 0) { print('Point created at $x, $y'); } } Кроме того, Dart теперь позволяет писать конструкторы внутри класса без повторения имени класса: class Point { int x, y; new(this.x, this.y); new origin() : x = 0, y = 0; factory clone(Point other) => Point(other.x, other.y); } Чтобы использовать Primary Constructors, SDK constraint должен быть 3.13+: environment: sdk: ^3.13.0 🧠 Analyzer стал умнее Dart 3.13 добавляет новые возможности LSP: • Inline Values — значения переменных прямо во время debugging • поддержка Flutter Widget Preview • интеграция Analysis Server с Dart Tooling Daemon То есть IDE получает больше информации непосредственно от Dart analyzer. 🧹 Новые lint rules Появились новые проверки, среди которых: async_return_with_no_await empty_container_bodies initialize_in_field_declaration unnecessary_const_in_enum_constructor unnecessary_primary_constructor_body unnecessary_type_name_in_constructor use_declaring_parameters А экспериментальный: use_primary_constructors может рекомендовать переход на новый синтаксис primary constructors. ⚡️ Новое в dart:isolate Появились API для более низкоуровневого управления isolate и event loop: Isolate.runSync Isolate.create Isolate.shutdownSync Isolate.pinToCurrentThread Isolate.runEventLoopSync Isolate.onEvent Isolate.handleEvent Это уже особенно интересно разработчикам высокопроизводительных приложений и тем, кто работает с concurrency на низком уровне. 📦 Новые возможности коллекций В dart:core: List.unmodifiableOf(...) Map.unmodifiableOf(...) Плюс новые эффективные операции для подсчёта битов у int: trailingZeroBitCount oneBitCount 🌐 JavaScript / Web interop JSFunction и JSExportedDartFunction теперь generic. Появился: JSObject.getPrototypeOf() Это продолжает общую тенденцию Dart — постепенно делать JS/Web interop более типобезопасным. 📦 Pub и CLI тоже получили апдейты Например: dart pub workspace list теперь позволяет посмотреть пакеты workspace и их директории, в том числе в JSON. А dart build cli получил cross-compilation: dart build cli --target-os ... --target-arch ... То есть Dart CLI становится всё более полноценным инструментом для создания и распространения native-приложений. ⚠️ Но есть breaking changes В Dart 3.13 есть несколько изменений, которые могут потребовать правок в существующем коде. Например, изменился тип возвращаемых значений NetworkInterface.addresses, а работа с некоторыми файловыми timestamp теперь сохраняет microsecond precision. Также изменено поведение type promotion, чтобы избежать потенциально unsound поведения. Поэтому для крупных проектов перед обновлением лучше посмотреть changelog. Главное впечатление от Dart 3.13: Dart не пытается устроить революцию. Он делает язык короче, строже и удобнее. И особенно хорошо это видно по Primary Constructors: // было class User { final int id; final String name; User(this.id, this.name); } // стало class User(var int id, var String name); Для Flutter-проектов с большим количеством моделей это потенциально очень приятное сокращение boilerplate. #flutter #dart #FlutterPulse #FlutterPulseNews
346
17
⚡️ Flutter 3.47: что ещё завезли? Помимо крупных изменений, в релизе много улучшений платформ, инструментов и самого framework. 🤖 Android обновил toolchain Для Flutter 3.47 официально проверяются: Java 17 Kotlin Gradle Plugin 2.4.0 Android Gradle Plugin 9.1.0 Gradle 9.3.1 А стандартные настройки SDK теперь: compileSdk → 36 targetSdk → 36 minSdk → 24 Так что старые Android-проекты могут встретиться с обновлением зависимостей. 🪟 Windows и Linux получили Flavors Теперь desktop-проекты могут использовать разные flavors. Например: flutter build windows --flavor production flutter build linux --flavor production Можно даже задавать разные assets для разных flavor'ов. 🪟 Multi-window стал мощнее Windows и Linux получили popup windows и дополнительные API для работы с нативными окнами. Например, теперь можно получить нативный handle окна (HWND, NSWindow, GtkWindow) и использовать его для более продвинутой интеграции с ОС. 🤖 GenUI продолжает развиваться Пакет genui получил версию 0.10.0. Добавили: a2ui_core; client-side functions; новые возможности взаимодействия AI-агента с UI. То есть Flutter продолжает активно двигаться в сторону AI-generated / agentic UI. ♿️ Accessibility и Text Selection Получили много небольших, но полезных улучшений: Android high-contrast и color inversion теперь автоматически учитываются; улучшена работа Text.rich и semantics; исправлены проблемы с выделением текста; улучшено поведение selection handles; исправлены проблемы с клавиатурой и scrolling. 🎨 Ещё немного UI-плюшек В framework появились дополнительные возможности: ImageIcon теперь может сохранять оригинальные цвета; больше контроля над AnimatedCrossFade; улучшена работа ImageStream; исправлены проблемы с жестами и scrolling; улучшена работа native iOS views. ⬆️ Обновляться уже можно Если готовы проверить проект: flutter upgrade Но перед обновлением большого production-проекта стоит посмотреть Breaking Changes — особенно из-за перехода Material/Cupertino в отдельные пакеты и новых требований Apple. 3.47.0 announcement 3.47.0 release notes & change log 3.47.0 breaking changes & migrations #flutter #dart #FlutterPulse #FlutterPulseNews
323
18
🚀 Flutter 3.47 вышел — что изменилось? Flutter 3.47 уже здесь. Релиз получился довольно крупным — особенно для тех, кто делает desktop, iOS/macOS и Flutter Web. Главное: 🎨 Material и Cupertino отделяют от Flutter SDK material_ui и cupertino_ui теперь официально вышли в версии 1.0 и становятся самостоятельными пакетами на pub.dev. Это значит, что Material и Cupertino смогут обновляться отдельно от Flutter SDK — быстрее и чаще. Важный момент: старые импорты пока работают, но уже стоит готовиться к миграции. 🍎 Готовимся к iOS 27 и Xcode 27 Flutter 3.47 повышает минимальные версии: iOS → 15 macOS → 12 Также начинается переход на новый UIScene lifecycle. Если в проекте есть собственный native-код или старые плагины, могут потребоваться изменения. А ещё Flutter постепенно прощается с Intel Mac. 📦 Swift Package Manager становится нормой 92 из 100 самых популярных iOS-плагинов уже перешли на Swift Package Manager. CocoaPods постепенно уходит в maintenance mode, поэтому Flutter рекомендует начинать переход на SwiftPM. 🌐 Flutter Web движется к Wasm WebAssembly становится всё более важной частью Flutter Web. Уже сейчас можно попробовать: flutter build web --release --wasm Но есть нюанс: для Wasm придётся уходить от старого dart:html к package:web. 🖥 Impeller теперь по умолчанию на Desktop Одно из самых заметных изменений: Impeller стал стандартным renderer'ом для macOS, Windows и Linux. Flutter рассчитывает получить более стабильную графику и убрать shader compilation jank — те самые микрофризы при первом запуске анимации. Также появились улучшения для: 🔹 multi-window; 🔹 popup windows; 🔹 dockable panes; 🔹 native window handles; 🔹 desktop flavors; 🔹 более чёткого текста. 👀 Widget Previews — Stable Flutter Widget Previews наконец вышел в стабильный статус. Теперь можно быстрее разрабатывать и тестировать отдельные виджеты, не запуская всё приложение целиком. #flutter #dart #FlutterPulse #FlutterPulseNews
319
19
Забудьте про Mac для iOS-разработки! 🚀 Долгое время Windows- и Linux-пользователи смотрели на Flutter с завистью: писать код можно везде, а вот собрать и отладить билд под iPhone — только на «Маке». Эпоха закончилась. 🎉 Появился Xcross — тулинг, который ломает эту стену. Теперь вы можете: 📱 Запускать приложение на реальном iPhone (симуляторы пока в стороне, но железо — да!). 🔥 Пользоваться Hot Reload и Hot Restart без потери состояния. 🛑 Ставить брейкпоинты и дебажить как обычно. 🛠 Полностью интегрироваться с DevTools. Главное условие — iOS 17+ на девайсе. Никаких платных аккаунтов разработчика: обычного бесплатного Apple Account более чем достаточно. 🍎💸 Это проект с открытым исходным кодом, автор ждёт ваш фидбек и баг-репорты. Попробуйте уже сегодня и оцените свободу выбора ОС для флаттер-разработки! 👇 https://xcross.sh/ Полную новость читайте здесь FlutterPulse — канал о мире Flutter! #flutter #dart #FlutterPulse #FlutterPulseNews #ohmyflutter #xcross #iosdev #crossplatform
410
20
Самые лучшие обновлённые пакеты за последние 24 часа 📦 flutter_inapp_purchase 10.2.4 — плагин для встроенных покупок (iOS/Android) по стандарту OpenIAP. 🔖 Обновлена зависимость Google Play Billing до 3.2.3, исправлена ошибка рефлексии R8 при сборке и повышено покрытие тестами SDK. 👍 Лайки: 442, 📥 Скачиваний: 7.2К 🔗 pub.dev/packages/flutter_inapp_purchase 📦 spot 0.20.0 — тулкит для Flutter-виджет-тестов: цепочечные селекторы, автоскриншоты и HTML-отчёты Timeline. 🚀 До 200× быстрее работают относительные запросы (withParent, withChild, чейнинг) на больших деревьях — обход теперь идёт вверх. Скриншот кадра растеризуется один раз и переиспользуется всеми ассертами (захват упал с 9.7 до 1.9 сек). Кэширование debugFillProperties ускорило диагностику ~1.5×. Исправлен фриз при неудачном поиске по ключу. Новое: act.inspectTap() — проверяет, можно ли тапнуть виджет, и возвращает причину отказа без исключений. 👍 Лайки: 110, 📥 Скачиваний: 6.3К 🔗 pub.dev/packages/spot 📦 persistent_bottom_nav_bar_v2 6.4.0 — популярный пакет для постоянной нижней навигации (17 стилей, стеки навигации, go_router, анимированные иконки). 🔖 Обновлена зависимость go_router до версии 17.4.0 для совместимости с актуальными SDK. 👍 Лайки: 444, 📥 Скачиваний: 14К 🔗 pub.dev/packages/persistent_bottom_nav_bar_v2 📦 flutter_callkit_incoming 3.1.5 — плагин для входящих звонков (CallKit на iOS, кастомный UI на Android). 🐛 Исправлен билд на Android (регрессия 3.1.4), устранён ForegroundServiceDidNotStartInTimeException, убран краш полноэкранного интента на Android 14+, исправлены рингтон и колбэки при убитом приложении. Добавлена поддержка удержания вызовов (Telecom) и корректная работа с микрофоном/камерой в фоне. На iOS поправлена аудио-сессия и событие isActive. 👍 Лайки: 511, 📥 Скачиваний: 78.8К 🔗 pub.dev/packages/flutter_callkit_incoming 📦 tracelet_platform_interface 3.8.1 — кроссплатформенный интерфейс для фоновой геолокации Tracelet (фильтрация, Kalman, геофенсы, трекинг). Независимо от платформы реализует логику: сглаживание GPS, детект моков, адаптивную частоту точек. 🔄 Выравнивание версии с основным пакетом tracelet (sync). 👍 Лайки: 1, 📥 Скачиваний: 8.2К 🔗 pub.dev/packages/tracelet_platform_interface 📦 omni_video_player 5.0.0 — универсальный плеер для YouTube, Vimeo, HLS и локальных файлов в одном виджете. ⚠️ BREAKING: Настройки YouTube WebView сгруппированы в VideoSourceConfiguration.youtube(webView: YoutubeWebViewConfiguration(...)). Переименованы флаги: forceWebViewOnly, enableFallback. Добавлен useNativeControls: true (нативные контролы YouTube поверх панели) — поставьте false для старого поведения. ✅ Исправления: видео корректно возобновляется после сика; YouTube/Vimeo сами восстанавливаются после ошибок; WebM показывает правильную длительность; плейлисты в полноэкранном режиме без фризов и мерцания; ускорена загрузка, снижено потребление памяти. 👍 Лайки: 58, 📥 Скачиваний: 3.5К 🔗 pub.dev/packages/omni_video_player Поддержать канал FlutterPulse — канал о мире Flutter! #flutter_inapp_purchase #spot #persistent_bottom_nav_bar_v2 #flutter_callkit_incoming #tracelet_platform_interface #omni_video_player #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
311