Flutter Pulse
1.01K subscribers
792 photos
1 file
2.11K links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
Обновлённые пакеты за последние 24 часа

supabase_offline 0.0.1
Резервирование имени для будущей офлайн-поддержки клиентов Supabase в Dart и Flutter. На данный момент пакет является заглушкой и не содержит функциональности.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/supabase_offline

adaptable_remote_config 0.0.1
Утилита для Flutter, позволяющая принудительно или опционально обновлять старые версии приложения без выпуска нового билда. Поддержка Android и iOS, гибкие источники данных и использование кэша при отсутствии интернета.
👍 Лайки: 1, 📥 Скачиваний: 0
https://pub.dev/packages/adaptable_remote_config

hot_patch_generator 0.0.1
Статическая генерация JS-модулей для Flutter. Автоматически переводит Flutter-виджеты с аннотацией @PatchEntry в JS-модули на этапе сборки для выполнения hot-patch без изменения исходного кода.
👍 Лайки: 1, 📥 Скачиваний: 155
https://pub.dev/packages/hot_patch_generator

Поддержать канал

FlutterPulse — канал о мире Flutter!

#supabase_offline #adaptable_remote_config #hot_patch_generator #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages
Обновлённые пакеты за последние 24 часа

shared_preferences_foundation 2.6.1
Реализация shared_preferences для iOS и macOS. Исправлена ошибка компиляции веб-приложений, напрямую импортирующих пакет.
👍 Лайки: 3, 📥 Скачиваний: 8.45M
https://pub.dev/packages/shared_preferences_foundation

vector_graphics_compiler 1.3.3
Компилятор SVG для Flutter. Теперь при обработке неподдерживаемых списков координат выбрасывается UnimplementedError вместо FormatException.
👍 Лайки: 124, 📥 Скачиваний: 6.15M
https://pub.dev/packages/vector_graphics_compiler

syncfusion_flutter_core 35.1.41
Ядро виджетов Syncfusion (графики, календари, PDF, карты). Добавлена поддержка Flutter SDK 3.47.
👍 Лайки: 254, 📥 Скачиваний: 723K
https://pub.dev/packages/syncfusion_flutter_core

syncfusion_flutter_datepicker 35.1.42
Виджет выбора дат с поддержкой исламского календаря. Обновлена совместимость с Flutter SDK 3.47.
👍 Лайки: 1640, 📥 Скачиваний: 227K
https://pub.dev/packages/syncfusion_flutter_datepicker

syncfusion_flutter_calendar 35.1.42
Календарь с видами День, Неделя, Месяц и Таймлайн. Добавлена поддержка Flutter SDK 3.47.
👍 Лайки: 1570, 📥 Скачиваний: 84K
https://pub.dev/packages/syncfusion_flutter_calendar

syncfusion_flutter_charts 35.1.41
Библиотека для создания анимированных графиков. Обновлена совместимость с Flutter SDK 3.47.
👍 Лайки: 3640, 📥 Скачиваний: 233K
https://pub.dev/packages/syncfusion_flutter_charts

Поддержать канал

FlutterPulse — канал о мире Flutter!

#shared_preferences_foundation #vector_graphics_compiler #syncfusion_flutter_core #syncfusion_flutter_datepicker #syncfusion_flutter_calendar #syncfusion_flutter_charts #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
WASM vs JavaScript 2026 — проверка на Flutter Web

Ожидали 50% прироста производительности от WebAssembly в Flutter Web, а получили скромные 5–10%. Звучит как разочарование? Но цифры скрывают интересную историю о том, где Wasm действительно летает, а где JavaScript всё ещё король.

Проект wasm_versus_javascript на Dart 3.13.1 и Flutter 3.47.1 провёл стресс-тест на Apple M4. Сравнение шло между классическим CanvasKit (JS) и skwasm (ST/MT). Результат: «волшебной таблетки» нет, но есть чёткое понимание, где стоит оптимизировать.

⚡️ Где Wasm выигрывает:
✅ Холодный старт: 181,8 мс против 337,7 мс у JS.
✅ Размер бандла: 5,43 МиБ против 7,56 МиБ.
✅ Целочисленные операции: ускорение до 2,72x.
✅ SIMD: разрыв достигает 8,46x.

Но не всё так просто. В скалярных дробных вычислениях JS быстрее в 3,09 раза. Создание короткоживущих объектов и работа с Map тоже отдают преимущество JavaScript. Если ваш проект — это сложная логика с частым созданием объектов, Wasm может не спасти.

🔧 Главная ловушка — интероперация.
Частые мелкие вызовы Dart→JS в режиме Wasm медленнее в 33,52 раза! V8 отлично инлайнит JS-код, а Wasm-мост создаёт накладные расходы. Решение? Батчинг данных. Не зовите JS на каждый пиксель, а передавайте массивы целиком.

📊 Рендеринг и UI:
Общая длительность операций (прокрутка, слои) почти одинакова. Но Wasm ST ускоряет подготовку кадра в 1,9 раза (7,92 мс против 15,31 мс) при обновлении 600 ячеек. Это создаёт запас производительности, который спасает при пиковых нагрузках.

⚠️ Ограничения:
В MT-режиме (SharedArrayBuffer) растеризация может замедляться из-за накладных расходов рендерера. Для этого нужны COOP/COEP заголовки на сервере. Методология была жёсткой: медиана из 6 сессий, bootstrap-анализ и валидация эталонами SHA-256.

Вывод простой: Wasm не делает Flutter Web «быстрее» в вакууме. Он меняет профиль производительности. Если у вас тяжёлые вычисления и SIMD — переходите. Если много мелких JS-вызовов — сначала оптимизируйте интероперацию.

🔗 Полезные ссылки
Исходный код проекта

📰 Читать оригинал на Habr

FlutterPulse — канал о мире Flutter!

#flutter #dart #flutterpulse #flutterpulsehabr
Обзор пакетов на тему Desktop (Windows, Linux & macOS)

flutter_local_notifications 22.3.3
Кроссплатформенный плагин для отображения локальных уведомлений на Android, iOS, macOS, Linux, Windows и Web. Поддерживает планирование показов, группировку уведомлений и обработку действий пользователя при нажатии на них.
👍 Лайки: 7.4K, 📥 Скачиваний: 3.6M
📅 Обновлено: 2 days ago
https://pub.dev/packages/flutter_local_notifications

dbus 0.8.0
Нативный клиент D-Bus для Dart, позволяющий обращаться к удаленным объектам и экспортировать локальные. Пакет поддерживает генерацию классов из определений интерфейсов для упрощения работы с сервисами.
👍 Лайки: 80, 📥 Скачиваний: 8.2M
📅 Обновлено: 40 days ago
https://pub.dev/packages/dbus

win32 6.4.0
Предоставляет доступ к отобранным API Win32 и COM через Dart FFI, открывая возможности, недоступные через dart:io или платформенные каналы. Позволяет Flutter-приложениям на Windows взаимодействовать с системными настройками, реестром, нативными диалогами и аппаратными устройствами.
👍 Лайки: 957, 📥 Скачиваний: 11M
📅 Обновлено: 2 months ago
https://pub.dev/packages/win32

posix 6.5.3
Предоставляет Dart-доступ к POSIX API для систем MacOS и Linux. Позволяет вызывать системные функции, возвращая только типы Dart и обрабатывая ошибки через исключения.
👍 Лайки: 11, 📥 Скачиваний: 8.2M
📅 Обновлено: 39 hours ago
https://pub.dev/packages/posix

window_manager 0.5.2
Предоставляет полный контроль над размером, позицией, внешним видом и поведением закрытия окон в Flutter-приложениях для Linux, macOS и Windows.
👍 Лайки: 1.1K, 📥 Скачиваний: 876K
📅 Обновлено: 3 months ago
https://pub.dev/packages/window_manager

msix 3.18.0
CLI-инструмент для создания установщиков в формате MSIX из Flutter-приложений. Позволяет настраивать параметры приложения и подписывать его для публикации в Microsoft Store или размещения на сайте.
👍 Лайки: 990, 📥 Скачиваний: 263K
📅 Обновлено: 4 months ago
https://pub.dev/packages/msix

FlutterPulse — канал о мире Flutter!

#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #flutter_local_notifications #dbus #win32 #posix #window_manager #msix
Секретный инструмент Flutter: как мгновенно увидеть «кривые» отступы

Знакомо ли вам это чувство, когда UI выглядит «почти идеально», но что-то всё равно бесит? 🤔 Часто проблема кроется в микроскопических смещениях, которые невооружённым глазом не заметить.

В Flutter есть встроенный виджет GridPaper — настоящая палочка-выручалочка для отладки вёрстки. Он накладывает на ваш интерфейс сетку, помогая точно определить, где элементы «ушли» от идеального выравнивания.

Как это работает? Просто оберните нужный участок кода в GridPaper. Например, если вы хотите проверить сетку с шагом 8 логических пикселей, код будет выглядеть так:

GridPaper(
color: const Color(0x400000FF),
interval: 80,
divisions: 10,
subdivisions: 1,
child: Padding(
padding: const EdgeInsets.all(16),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
const Text('Настройки профиля'),
const SizedBox(height: 24),
ElevatedButton(
onPressed: () {},
child: const Text('Сохранить'),
),
],
),
),
);


Плотность этой «паутины» настраивается тремя параметрами:
• interval — расстояние между основными линиями;
• divisions — количество делений внутри основной ячейки;
• subdivisions — дополнительные деления внутри каждого участка.

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

Главное правило: не забудьте убрать GridPaper после проверки, чтобы не отправлять в продакшн интерфейс в клеточку! 🙂

А как вы проверяете вёрстку? Используете сетку или доверяете Flutter Inspector? Делитесь в комментариях! 👇

Полную новость читайте здесь.

FlutterPulse — канал о мире Flutter!

#flutter #dart #FlutterPulse #FlutterPulseNews #flutter_amiga #debugging #ui
👍2
📚 Meander — создаём текстовые квесты и визуальные новеллы без программирования

🎮 Хотите сделать интерактивную историю, где читатель сам выбирает развитие сюжета? Обратите внимание на Meander — открытый движок для текстовых квестов и визуальных новелл.

Проект объединяет редактор историй, плеер и каталог сообщества. При этом он построен на технологиях Flutter и Rust и рассчитан на несколько платформ.

🧩 Что умеет Meander?

✍️ Визуальный редактор — создание историй через граф нод, без необходимости писать код вручную.

🔀 Ветвление сюжета — построение интерактивных сценариев и переходов между событиями.

🎭 Визуальные скрипты — настройка логики поведения истории.

▶️ Встроенный плеер — запуск и прохождение созданных квестов.

🌐 Каталог сообщества — площадка для знакомства с пользовательскими историями.

Отдельные квесты можно запускать в браузере, а основное приложение поддерживает настольные и мобильные платформы.

⚙️ Что интересного внутри?

Архитектура проекта сочетает несколько технологий:

• Flutter / Dart — пользовательский интерфейс и приложения.
• Rust — ядро движка, модели данных и выполнение сценариев.
• flutter_rust_bridge — взаимодействие Dart-кода с Rust.
• Lua — система плагинов.
• WebAssembly — браузерная сборка движка.

Это интересный пример того, как Flutter может использоваться не только для обычных мобильных приложений, но и для создания полноценных инструментов для авторов контента.

💻 Где работает?

📱 Android
🍎 iOS — сборка из исходников
🐧 Linux
🪟 Windows
💻 macOS
🌍 Браузер — через веб-плеер

Для Android предусмотрена установка через Google Play, для Linux — AppImage и AUR, для Windows и macOS доступны архивы релизов.

🔓 Open Source

Meander распространяется под лицензией AGPL-3.0-or-later. Код открыт, проект принимает issues и pull requests.

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

🚀 Итог: Meander стоит изучить тем, кто интересуется Flutter, интерактивными историями, визуальными редакторами и связкой Dart + Rust.

✈️ Telegram-канал Meander: @meanderru

👨‍💻 Автор проекта подписчик нашего канала : @sup123543

🔗 Репозиторий:
https://github.com/IILLUMINATION/meander-public

🌐 Сайт и каталог квестов:
https://meander.sbs/

#Flutter #Dart #Rust #OpenSource #GameDev #VisualNovel #FlutterDev #FlutterPulse
🔥1
Обновлённые пакеты за последние 24 часа

df_safer_dart 0.22.2
Пакет для превращения nullable-значений и исключений в типизированные значения. Выполнен merge ветки main в prod.
👍 Лайки: 13, 📥 Скачиваний: 20.6K
https://pub.dev/packages/df_safer_dart

df_safer_dart_annotations 0.4.1
Аннотации для статического анализа кода в Dart. Обновлена документация: удалена ссылка на Discord, указаны GitHub Issues и email.
👍 Лайки: 2, 📥 Скачиваний: 20.2K
https://pub.dev/packages/df_safer_dart_annotations

es_compression 2.0.16
Фреймворк сжатия для Dart с FFI-реализациями Brotli, Lz4 и Zstd. Устранена проблема, связанная с уязвимостью CVE-2026-111497 в Brotli.
👍 Лайки: 52, 📥 Скачиваний: 5.8K
https://pub.dev/packages/es_compression

native_synchronization_temp 0.8.1
Экспериментальный пакет с нативными примитивами синхронизации для изолятов. Исправлено получение таймера Mutex на Windows, пробуждение потребителей при закрытии mailbox и ограничены таймауты ConditionVariable.
👍 Лайки: 1, 📥 Скачиваний: 41K
https://pub.dev/packages/native_synchronization_temp

flml_internet_checker 4.0.0
Пакет для мониторинга сети в Flutter. Сохранение состояния при потере связи, исправление WASM через dart:js_interop, отказ от DNS-кэша в пользу TCP-хендшейков и устранение гонки условий.
👍 Лайки: 40, 📥 Скачиваний: 61
https://pub.dev/packages/flml_internet_checker

flutter_edge_ai 2.5.4
Пакет для работы с Edge AI моделями. Исправлена работа с моделями Gemma 4 в форматах .bin и .tflite, используются собственные маркеры поворотов.
👍 Лайки: 16, 📥 Скачиваний: 11.1K
https://pub.dev/packages/flutter_edge_ai

Поддержать канал

FlutterPulse — канал о мире Flutter!

#df_safer_dart #df_safer_dart_annotations #es_compression #native_synchronization_temp #flml_internet_checker #flutter_edge_ai #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Перехватываем запросы из Flutter приложения или как мы настраиваем Charles Proxy для тестировщиков

Знаете, почему тестировщики часто жалуются, что «сервер упал», хотя все работает? Потому что стандартные HTTP-клиенты в Flutter игнорируют системный прокси Wi-Fi. Если вы не прописали адрес вручную в коде, Charles Proxy просто не увидит трафик вашего приложения.

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

🔧 Инженерный нюанс: популярный пакет native_dio_adapter оказался нестабильным. Поэтому команда пошла по пути создания универсального клиента. Метод findProxy задает адрес и порт, а badCertificateCallback отключает строгую проверку SSL. Это позволяет Charles расшифровывать HTTPS-трафик.

Для интеграции с Dio используется обертка IOHttpClientAdapter, а для библиотек http или chopper клиент передается напрямую. Такой подход работает независимо от выбранного HTTP-клиента.

⚠️ Важный момент по безопасности: принятие недоверенных сертификатов и настройка прокси выполняются исключительно в режиме отладки (kDebugMode). В продакшене эти настройки игнорируются, что исключает риск MITM-атак и утечки токенов.

Как передать IP-адрес прокси в приложение? Есть два пути:
✅ Переменные окружения через --dart-define. Минус: при смене IP хоста требуется пересборка.
✅ UI-настройки в самом приложении. Тестировщик вводит данные, они сохраняются в shared_preferences. Требует перезапуска приложения.

Для Android есть хитрость: сертификат Charles можно вшить прямо в res/raw и привязать через network_security_config.xml. Это позволяет ограничить перехват только debug-сборками, не требуя установки сертификата на каждое устройство вручную.

📊 Практический результат: тестировщики получают полный контроль над трафиком. Можно анализировать дубли, подменять ответы моками и эмулировать задержки (throttling). Логика работы с прокси изолирована, поэтому основной код приложения остается чистым.

Если вы устали гуглить, почему Charles не видит запросы из Flutter, — этот подход сэкономит часы отладки.

📰 Читать оригинал на Habr

FlutterPulse — канал о мире Flutter!

#flutter #dart #flutterpulse #flutterpulsehabr
Обзор пакетов на тему Firebase

firebase_messaging 17.0.1
Плагин для Flutter, позволяющий использовать API Firebase Cloud Messaging.
👍 Лайки: 3.9K, 📥 Скачиваний: 4.1M
📅 Обновлено: 5 days ago
https://pub.dev/packages/firebase_messaging

firebase_auth 7.0.1
Плагин для Flutter, позволяющий использовать API аутентификации Firebase.
👍 Лайки: 4.3K, 📥 Скачиваний: 2.0M
📅 Обновлено: 5 days ago
https://pub.dev/packages/firebase_auth

firebase_core 5.1.0
Плагин для Flutter, позволяющий использовать Firebase Core API. Он обеспечивает подключение приложения к нескольким экземплярам Firebase.
👍 Лайки: 4.1K, 📥 Скачиваний: 5.5M
📅 Обновлено: 5 days ago
https://pub.dev/packages/firebase_core

firebase_analytics 13.0.1
Плагин для Flutter, позволяющий использовать API Firebase Analytics.
👍 Лайки: 1.3K, 📥 Скачиваний: 2.4M
📅 Обновлено: 5 days ago
https://pub.dev/packages/firebase_analytics

cloud_firestore 7.1.0
Плагин для Flutter, позволяющий использовать API Cloud Firestore.
👍 Лайки: 3.8K, 📥 Скачиваний: 1.5M
📅 Обновлено: 5 days ago
https://pub.dev/packages/cloud_firestore

awesome_notifications 0.12.1
Позволяет создавать кастомные локальные и push-уведомления с изображениями, звуками и кнопками. Также обеспечивает получение событий в реальном времени о создании, отображении или нажатии на уведомления.
👍 Лайки: 3.4K, 📥 Скачиваний: 70.4K
📅 Обновлено: 3 months ago
https://pub.dev/packages/awesome_notifications

FlutterPulse — канал о мире Flutter!

#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #firebase_messaging #firebase_auth #firebase_core #firebase_analytics #cloud_firestore #awesome_notifications
Обновлённые пакеты за последние 24 часа

zstandard 1.5.4
Плагин для нативного сжатия/распаковки алгоритмом Zstandard через FFI и WebAssembly. Валидация процесса деплоя, пересборка WebAssembly-ассетов и нативных библиотек CLI.
👍 Лайки: 12, 📥 Скачиваний: 38.2K
https://pub.dev/packages/zstandard

onesignal_flutter 5.x.x
SDK для интеграции push-уведомлений, SMS, email и in-app сообщений в Flutter-приложения. Добавлена возможность отключать модуль геолокации через переменную окружения ONESIGNAL_DISABLE_LOCATION.
👍 Лайки: 955, 📥 Скачиваний: 177K
https://pub.dev/packages/onesignal_flutter

flutter_background_video_recorder 2.1.0
Плагин для записи видео и аудио в фоне на Android. Добавлен доступ к «сырым» потокам данных (YUV, JPEG, RGBA, PCM), выбор камеры и управление зумом, оптимизация передачи данных через dart:ffi.
👍 Лайки: 26, 📥 Скачиваний: 115
https://pub.dev/packages/flutter_background_video_recorder

saropa_lints 17.0.0
Комплексная система статического анализа для Flutter и Dart. Breaking Change: требуется Dart >= 3.11.0 и analyzer >= 13.0.0, переименовано правило deprecated_new_in_comment_reference, улучшена точность подсветки ошибок.
👍 Лайки: 11, 📥 Скачиваний: 2.7K
https://pub.dev/packages/saropa_lints

mercury_client 2.4.0
Портативный HTTP-клиент для Dart. Поддержка Dart 3.13+, исправления в HttpCache (логика кэширования по креденшелам, ошибки сети), исправления в клиентах Browser и VM.
👍 Лайки: 15, 📥 Скачиваний: 6.3K
https://pub.dev/packages/mercury_client

Pigeon 29.0.12
Генератор кода для связи Flutter с нативными платформами. Добавлено предупреждение при генерации JNI-кода, если версия зависимости jni ниже 1.1.1, обновлена зависимость jni до ^1.1.1.
👍 Лайки: 1260, 📥 Скачиваний: 861K
https://pub.dev/packages/pigeon

Поддержать канал

FlutterPulse — канал о мире Flutter!

#zstandard #onesignal_flutter #flutter_background_video_recorder #saropa_lints #mercury_client #pigeon #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages