Обновлённые пакеты за последние 24 часа
Bones_API 1.17.0
Фреймворк для создания API-бэкендов на Dart. Расширены возможности конфигурации тестовых сред через Docker: умный выбор портов, гибкие опции запуска и оптимизация БД.
👍 Лайки: 33, 📥 Скачиваний: 3.9K
https://pub.dev/packages/bones_api
cached_network_image 4.0.4
Пакет для кэширования сетевых изображений в Flutter. Обновлены зависимости (flutter_cache_manager, material_ui, octo_image) и примеры под новые стандарты линтинга.
👍 Лайки: 6970, 📥 Скачиваний: 3.3M
https://pub.dev/packages/cached_network_image
liquid_glass_widgets 1.8.1
Пакет для добавления эффекта «жидкого стекла» из iOS 26 в Flutter. Исправлены баги с текстурами, навигацией, семантикой для скринридеров и утечками памяти.
👍 Лайки: 329, 📥 Скачиваний: 81.2K
https://pub.dev/packages/liquid_glass_widgets
Kalender 0.5.0
Высоконастраиваемый виджет календаря для Flutter. Изменена архитектура CalendarView, добавлена поддержка нативного Draggable для событий, обновлены колбэки. Режим «Расписание» временно удален.
👍 Лайки: 187, 📥 Скачиваний: 62.7K
https://pub.dev/packages/kalender
docker_commander 3.1.0
Пакет для управления Docker-контейнерами. Добавлен единый класс DockerRunOptions, поддержка автоприсвоения портов, переиспользования контейнеров и новых опций (лимиты ресурсов, tmpfs, labels).
👍 Лайки: 16, 📥 Скачиваний: 3.4K
https://pub.dev/packages/docker_commander
dom_builder 3.1.0
Пакет для генерации и манипуляции DOM-элементами. Добавлена поддержка Dart 3.8–3.13, исправлены ошибки компиляции и баги в DOMTreeMap для dart2wasm.
👍 Лайки: 19, 📥 Скачиваний: 2.1K
https://pub.dev/packages/dom_builder
Поддержать канал
FlutterPulse — канал о мире Flutter!
#bones_api #cached_network_image #liquid_glass_widgets #kalender #docker_commander #dom_builder #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Bones_API 1.17.0
Фреймворк для создания API-бэкендов на Dart. Расширены возможности конфигурации тестовых сред через Docker: умный выбор портов, гибкие опции запуска и оптимизация БД.
👍 Лайки: 33, 📥 Скачиваний: 3.9K
https://pub.dev/packages/bones_api
cached_network_image 4.0.4
Пакет для кэширования сетевых изображений в Flutter. Обновлены зависимости (flutter_cache_manager, material_ui, octo_image) и примеры под новые стандарты линтинга.
👍 Лайки: 6970, 📥 Скачиваний: 3.3M
https://pub.dev/packages/cached_network_image
liquid_glass_widgets 1.8.1
Пакет для добавления эффекта «жидкого стекла» из iOS 26 в Flutter. Исправлены баги с текстурами, навигацией, семантикой для скринридеров и утечками памяти.
👍 Лайки: 329, 📥 Скачиваний: 81.2K
https://pub.dev/packages/liquid_glass_widgets
Kalender 0.5.0
Высоконастраиваемый виджет календаря для Flutter. Изменена архитектура CalendarView, добавлена поддержка нативного Draggable для событий, обновлены колбэки. Режим «Расписание» временно удален.
👍 Лайки: 187, 📥 Скачиваний: 62.7K
https://pub.dev/packages/kalender
docker_commander 3.1.0
Пакет для управления Docker-контейнерами. Добавлен единый класс DockerRunOptions, поддержка автоприсвоения портов, переиспользования контейнеров и новых опций (лимиты ресурсов, tmpfs, labels).
👍 Лайки: 16, 📥 Скачиваний: 3.4K
https://pub.dev/packages/docker_commander
dom_builder 3.1.0
Пакет для генерации и манипуляции DOM-элементами. Добавлена поддержка Dart 3.8–3.13, исправлены ошибки компиляции и баги в DOMTreeMap для dart2wasm.
👍 Лайки: 19, 📥 Скачиваний: 2.1K
https://pub.dev/packages/dom_builder
Поддержать канал
FlutterPulse — канал о мире Flutter!
#bones_api #cached_network_image #liquid_glass_widgets #kalender #docker_commander #dom_builder #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Как теплотехник в 50 лет стер границу между КИПиА и IT: пишем универсальный Android‑SCADA движок на Flutter
Теплотехник с 50-летним стажем решил, что рутинное проектирование в AutoCAD и программирование контроллеров «Овен» — это слишком скучно. Вместо того чтобы смириться, он написал полноценный Android-SCADA движок на Flutter. Это не просто приложение, а универсальный инструмент для настройки, контроля и управления промышленным оборудованием прямо со смартфона.
Главная фишка архитектуры — динамический парсер JSON. Интерфейс не захардкожен. При запуске приложение считывает конфигурационный файл, где описаны технологические системы, адреса Modbus-регистров и аварийные границы. На основе этого Flutter генерирует экраны на лету. Чтобы адаптировать софт под новый объект, достаточно заменить текстовый файл, без пересборки кода.
Связь с контроллерами реализована через три независимых контура:
✅ Полевой хардкор: Modbus RTU через USB-OTG. Прямое подключение к контроллеру, когда нет ни Wi-Fi, ни интернета.
✅ Локальный комфорт: Modbus TCP по Wi-Fi. Настройка системы, не подходя вплотную к шкафу.
✅ Глобальный контроль: Удаленный доступ через HTTP REST API к облачной платформе OwenCloud.
Разработка велась с активным использованием нейросетей. Автор, обладая базовыми знаниями Dart, делегировал ИИ сложные задачи: асинхронность, работу с Streams и низкоуровневое взаимодействие с USB-портами Android. Его роль сводилась к архитектурному проектированию: он описывал логику протокола (например, склейку регистров в Float для давления), а нейросеть генерировала код и подбирала библиотеки.
Приложение работает в двух режимах: локальном и облачном. В облачном режиме данные приходят JSON-пакетами с серверов, а архивы можно выгружать в CSV. Есть экраны трендов, исторических данных, логов ошибок и даже генерация PDF-отчетов с текущими параметрами.
⚠️ Проект остался личным хобби, так как не нашел применения в текущей компании автора. Однако опыт доказывает: инженеры с опытом в автоматизации (Siemens, Carel, ПЛК) могут создавать сложные цифровые продукты, используя ИИ как мост между старой экспертизой и новыми технологиями.
💡 Это пример того, как Flutter выходит за рамки UI-фреймворка и становится платформой для промышленной автоматизации. Если вы работаете с Modbus или IoT, такой подход к конфигурируемому интерфейсу заслуживает внимания.
📰 Читать оригинал на Habr
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr
Теплотехник с 50-летним стажем решил, что рутинное проектирование в AutoCAD и программирование контроллеров «Овен» — это слишком скучно. Вместо того чтобы смириться, он написал полноценный Android-SCADA движок на Flutter. Это не просто приложение, а универсальный инструмент для настройки, контроля и управления промышленным оборудованием прямо со смартфона.
Главная фишка архитектуры — динамический парсер JSON. Интерфейс не захардкожен. При запуске приложение считывает конфигурационный файл, где описаны технологические системы, адреса Modbus-регистров и аварийные границы. На основе этого Flutter генерирует экраны на лету. Чтобы адаптировать софт под новый объект, достаточно заменить текстовый файл, без пересборки кода.
Связь с контроллерами реализована через три независимых контура:
✅ Полевой хардкор: Modbus RTU через USB-OTG. Прямое подключение к контроллеру, когда нет ни Wi-Fi, ни интернета.
✅ Локальный комфорт: Modbus TCP по Wi-Fi. Настройка системы, не подходя вплотную к шкафу.
✅ Глобальный контроль: Удаленный доступ через HTTP REST API к облачной платформе OwenCloud.
Разработка велась с активным использованием нейросетей. Автор, обладая базовыми знаниями Dart, делегировал ИИ сложные задачи: асинхронность, работу с Streams и низкоуровневое взаимодействие с USB-портами Android. Его роль сводилась к архитектурному проектированию: он описывал логику протокола (например, склейку регистров в Float для давления), а нейросеть генерировала код и подбирала библиотеки.
Приложение работает в двух режимах: локальном и облачном. В облачном режиме данные приходят JSON-пакетами с серверов, а архивы можно выгружать в CSV. Есть экраны трендов, исторических данных, логов ошибок и даже генерация PDF-отчетов с текущими параметрами.
⚠️ Проект остался личным хобби, так как не нашел применения в текущей компании автора. Однако опыт доказывает: инженеры с опытом в автоматизации (Siemens, Carel, ПЛК) могут создавать сложные цифровые продукты, используя ИИ как мост между старой экспертизой и новыми технологиями.
💡 Это пример того, как Flutter выходит за рамки UI-фреймворка и становится платформой для промышленной автоматизации. Если вы работаете с Modbus или IoT, такой подход к конфигурируемому интерфейсу заслуживает внимания.
📰 Читать оригинал на Habr
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr
❤1🔥1
Обновлённые пакеты за последние 24 часа
jnigen 1.0.1
Инструмент для вызова Java API из Dart через JNI. YAML-формат конфигурации объявлен устаревшим, исправлена обработка пустых записей в списке classes, добавлена генерация ссылок на Javadoc.
👍 Лайки: 133, 📥 Скачиваний: 46.5K
https://pub.dev/packages/jnigen
lucide_icons_flutter 3.1.21
Пакет иконок Lucide для Flutter. Обновление до Lucide 1.49.0 (19 новых иконок), исправлены ошибки рендеринга штрихов в переменных шрифтах, улучшен процесс генерации векторных путей.
👍 Лайки: 206, 📥 Скачиваний: 231K
https://pub.dev/packages/lucide_icons_flutter
jni 1.1.0
Библиотека для доступа к JNI из Dart/Flutter. Добавлены утилиты для глубокого преобразования данных между Dart и Java, обновлена документация.
👍 Лайки: 63, 📥 Скачиваний: 6.4M
https://pub.dev/packages/jni
objective_c 9.6.2
Библиотека для взаимодействия Flutter с Objective-C. Исправлены утечки памяти при конвертации типов и создании коллекций, устранены краши в NSInputStream, метод close() стал идемпотентным.
👍 Лайки: 18, 📥 Скачиваний: 6.49M
https://pub.dev/packages/objective_c
jni_flutter 1.0.4
Библиотека для доступа к Android API Flutter из Dart. Обновлены присваивания свойств Groovy Gradle для устранения предупреждений, обновлена документация.
👍 Лайки: 16, 📥 Скачиваний: 5.2M
https://pub.dev/packages/jni_flutter
ffigen 22.1.0
Генератор FFI-биндингов для Dart. YAML-конфигурация объявлена устаревшей, улучшена поддержка C++, добавлена возможность дополнять опции компилятора.
👍 Лайки: 338, 📥 Скачиваний: 1.14M
https://pub.dev/packages/ffigen
Поддержать канал
FlutterPulse — канал о мире Flutter!
#jnigen #lucide_icons_flutter #jni #objective_c #jni_flutter #ffigen #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
jnigen 1.0.1
Инструмент для вызова Java API из Dart через JNI. YAML-формат конфигурации объявлен устаревшим, исправлена обработка пустых записей в списке classes, добавлена генерация ссылок на Javadoc.
👍 Лайки: 133, 📥 Скачиваний: 46.5K
https://pub.dev/packages/jnigen
lucide_icons_flutter 3.1.21
Пакет иконок Lucide для Flutter. Обновление до Lucide 1.49.0 (19 новых иконок), исправлены ошибки рендеринга штрихов в переменных шрифтах, улучшен процесс генерации векторных путей.
👍 Лайки: 206, 📥 Скачиваний: 231K
https://pub.dev/packages/lucide_icons_flutter
jni 1.1.0
Библиотека для доступа к JNI из Dart/Flutter. Добавлены утилиты для глубокого преобразования данных между Dart и Java, обновлена документация.
👍 Лайки: 63, 📥 Скачиваний: 6.4M
https://pub.dev/packages/jni
objective_c 9.6.2
Библиотека для взаимодействия Flutter с Objective-C. Исправлены утечки памяти при конвертации типов и создании коллекций, устранены краши в NSInputStream, метод close() стал идемпотентным.
👍 Лайки: 18, 📥 Скачиваний: 6.49M
https://pub.dev/packages/objective_c
jni_flutter 1.0.4
Библиотека для доступа к Android API Flutter из Dart. Обновлены присваивания свойств Groovy Gradle для устранения предупреждений, обновлена документация.
👍 Лайки: 16, 📥 Скачиваний: 5.2M
https://pub.dev/packages/jni_flutter
ffigen 22.1.0
Генератор FFI-биндингов для Dart. YAML-конфигурация объявлена устаревшей, улучшена поддержка C++, добавлена возможность дополнять опции компилятора.
👍 Лайки: 338, 📥 Скачиваний: 1.14M
https://pub.dev/packages/ffigen
Поддержать канал
FlutterPulse — канал о мире Flutter!
#jnigen #lucide_icons_flutter #jni #objective_c #jni_flutter #ffigen #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Обзор пакетов на тему Rich Text, Markdown & HTML Editor
appflowy_editor 6.2.0
Высоконастраиваемый редактор rich-текста для Flutter. Позволяет создавать интуитивные редакторы с кастомизируемыми блоками, темами и меню.
👍 Лайки: 518, 📥 Скачиваний: 7.5K
📅 Обновлено: 9 months ago
https://pub.dev/packages/appflowy_editor
html_editor_enhanced 2.7.1
WYSIWYG-редактор HTML для Android, iOS и Web, использующий обертку Summernote. Предлагает нативные виджеты, оптимизированный WebView и поддержку темной темы.
👍 Лайки: 660, 📥 Скачиваний: 31.3K
📅 Обновлено: 14 months ago
https://pub.dev/packages/html_editor_enhanced
flutter_quill 11.6.0
WYSIWYG-редактор текста для Flutter, поддерживающий платформы Android, iOS, Web и Desktop. Использует формат Quill Delta для представления и сохранения содержимого документа.
👍 Лайки: 2150, 📥 Скачиваний: 257K
📅 Обновлено: 15 days ago
https://pub.dev/packages/flutter_quill
quill_native_bridge 11.2.0
Внутренний плагин для flutter_quill, обеспечивающий доступ к платформенным API. Позволяет работать с буфером обмена (HTML, изображения, GIF), галереей и системными диалогами сохранения файлов на iOS, Android, macOS, Windows, Linux и Web.
👍 Лайки: 12, 📥 Скачиваний: 264K
📅 Обновлено: 2 months ago
https://pub.dev/packages/quill_native_bridge
flutter_quill_delta_from_html 1.5.3
Преобразует HTML-контент в формат Quill Delta для использования в редакторе Quill. Поддерживает широкий спектр тегов, включая форматирование текста, списки, таблицы, изображения и видео.
👍 Лайки: 20, 📥 Скачиваний: 264K
📅 Обновлено: 14 months ago
https://pub.dev/packages/flutter_quill_delta_from_html
fleather 1.28.0
Пакет для создания редакторов rich text в Flutter, основанный на Zefyr и использующий модель документа Parchment. Поддерживает инлайн-атрибуты, списки, встраивание элементов и работает на Android, iOS, Web, macOS, Linux и Windows.
👍 Лайки: 194, 📥 Скачиваний: 13.4K
📅 Обновлено: 38 days ago
https://pub.dev/packages/fleather
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #appflowy_editor #html_editor_enhanced #flutter_quill #quill_native_bridge #flutter_quill_delta_from_html #fleather
appflowy_editor 6.2.0
Высоконастраиваемый редактор rich-текста для Flutter. Позволяет создавать интуитивные редакторы с кастомизируемыми блоками, темами и меню.
👍 Лайки: 518, 📥 Скачиваний: 7.5K
📅 Обновлено: 9 months ago
https://pub.dev/packages/appflowy_editor
html_editor_enhanced 2.7.1
WYSIWYG-редактор HTML для Android, iOS и Web, использующий обертку Summernote. Предлагает нативные виджеты, оптимизированный WebView и поддержку темной темы.
👍 Лайки: 660, 📥 Скачиваний: 31.3K
📅 Обновлено: 14 months ago
https://pub.dev/packages/html_editor_enhanced
flutter_quill 11.6.0
WYSIWYG-редактор текста для Flutter, поддерживающий платформы Android, iOS, Web и Desktop. Использует формат Quill Delta для представления и сохранения содержимого документа.
👍 Лайки: 2150, 📥 Скачиваний: 257K
📅 Обновлено: 15 days ago
https://pub.dev/packages/flutter_quill
quill_native_bridge 11.2.0
Внутренний плагин для flutter_quill, обеспечивающий доступ к платформенным API. Позволяет работать с буфером обмена (HTML, изображения, GIF), галереей и системными диалогами сохранения файлов на iOS, Android, macOS, Windows, Linux и Web.
👍 Лайки: 12, 📥 Скачиваний: 264K
📅 Обновлено: 2 months ago
https://pub.dev/packages/quill_native_bridge
flutter_quill_delta_from_html 1.5.3
Преобразует HTML-контент в формат Quill Delta для использования в редакторе Quill. Поддерживает широкий спектр тегов, включая форматирование текста, списки, таблицы, изображения и видео.
👍 Лайки: 20, 📥 Скачиваний: 264K
📅 Обновлено: 14 months ago
https://pub.dev/packages/flutter_quill_delta_from_html
fleather 1.28.0
Пакет для создания редакторов rich text в Flutter, основанный на Zefyr и использующий модель документа Parchment. Поддерживает инлайн-атрибуты, списки, встраивание элементов и работает на Android, iOS, Web, macOS, Linux и Windows.
👍 Лайки: 194, 📥 Скачиваний: 13.4K
📅 Обновлено: 38 days ago
https://pub.dev/packages/fleather
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #appflowy_editor #html_editor_enhanced #flutter_quill #quill_native_bridge #flutter_quill_delta_from_html #fleather
🤮1
Обновлённые пакеты за последние 24 часа
Pigeon 29.0.6
Генератор кода для связи Flutter с нативными платформами. Обновлены руководства по Native Interop и SwiftPM, обновлены зависимости FFI и JNI, зафиксированы версии dev-зависимостей.
👍 Лайки: 1260, 📥 Скачиваний: 702K
https://pub.dev/packages/pigeon
bdd_framework 5.0.1
Пакет для BDD-тестирования в Dart/Flutter. Исправлена логика очистки файлов: теперь удаляются только .feature файлы в указанной директории, а пустой путь интерпретируется как текущая директория.
👍 Лайки: 27, 📥 Скачиваний: 1230
https://pub.dev/packages/bdd_framework
fast_immutable_collections 11.2.1
Высокопроизводительные неизменяемые коллекции для Dart/Flutter. Исправлены устаревшие бенчмарки в примере, код пакета не изменился.
👍 Лайки: 410, 📥 Скачиваний: 169K
https://pub.dev/packages/fast_immutable_collections
dynamic_background 0.6.0
Пакет для создания анимированных фонов в Flutter. Исправлена ошибка обновления данных анимации, минимальная версия Flutter повышена до 3.27, добавлены регрессионные тесты.
👍 Лайки: 52, 📥 Скачиваний: 603
https://pub.dev/packages/dynamic_background
Davi 5.0.0
Пакет для высокопроизводительных таблиц в Flutter. Добавлен Builder Mode для внешних источников данных, динамическая высота строк и автоподбор ширины колонок.
👍 Лайки: 75, 📥 Скачиваний: 1320
https://pub.dev/packages/davi
dwds 27.1.4
Dart Web Developer Service для работы инструментов разработчика с веб-приложениями. Исправлены ошибки дублирования вкладок браузера и неконтролируемые ошибки в PersistentWebSocket.
👍 Лайки: 31, 📥 Скачиваний: 7.19M
https://pub.dev/packages/dwds
Поддержать канал
FlutterPulse — канал о мире Flutter!
#pigeon #bdd_framework #fast_immutable_collections #dynamic_background #davi #dwds #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Pigeon 29.0.6
Генератор кода для связи Flutter с нативными платформами. Обновлены руководства по Native Interop и SwiftPM, обновлены зависимости FFI и JNI, зафиксированы версии dev-зависимостей.
👍 Лайки: 1260, 📥 Скачиваний: 702K
https://pub.dev/packages/pigeon
bdd_framework 5.0.1
Пакет для BDD-тестирования в Dart/Flutter. Исправлена логика очистки файлов: теперь удаляются только .feature файлы в указанной директории, а пустой путь интерпретируется как текущая директория.
👍 Лайки: 27, 📥 Скачиваний: 1230
https://pub.dev/packages/bdd_framework
fast_immutable_collections 11.2.1
Высокопроизводительные неизменяемые коллекции для Dart/Flutter. Исправлены устаревшие бенчмарки в примере, код пакета не изменился.
👍 Лайки: 410, 📥 Скачиваний: 169K
https://pub.dev/packages/fast_immutable_collections
dynamic_background 0.6.0
Пакет для создания анимированных фонов в Flutter. Исправлена ошибка обновления данных анимации, минимальная версия Flutter повышена до 3.27, добавлены регрессионные тесты.
👍 Лайки: 52, 📥 Скачиваний: 603
https://pub.dev/packages/dynamic_background
Davi 5.0.0
Пакет для высокопроизводительных таблиц в Flutter. Добавлен Builder Mode для внешних источников данных, динамическая высота строк и автоподбор ширины колонок.
👍 Лайки: 75, 📥 Скачиваний: 1320
https://pub.dev/packages/davi
dwds 27.1.4
Dart Web Developer Service для работы инструментов разработчика с веб-приложениями. Исправлены ошибки дублирования вкладок браузера и неконтролируемые ошибки в PersistentWebSocket.
👍 Лайки: 31, 📥 Скачиваний: 7.19M
https://pub.dev/packages/dwds
Поддержать канал
FlutterPulse — канал о мире Flutter!
#pigeon #bdd_framework #fast_immutable_collections #dynamic_background #davi #dwds #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
❤2👍1
3D в игре на Flame: от одной модели до целого мира
Представьте: вы пишете 2D-игру на Flame, но хотите добавить в неё полноценный 3D-мир. Звучит как боль? Разработчики из pleiondev решили эту задачу, создав мост между 2D-логикой и 3D-рендерингом. Результат — браузерный шутер River Sortie в стиле классического River Raid, где самолёт летит над бесконечной рекой, уничтожая танкеры и мосты.
🚀 Ключевая фишка — пакет flame_flutter3d. Он позволяет встраивать 3D-модели прямо в 2D-сцену Flame. Есть два режима: простой (одна модель через
💡 Архитектурно это выглядит как
⚡️ Главная проблема интеграции — синхронизация времени. Два независимых таймера (для 2D и 3D) неизбежно рассинхронизируются. Решение — единый тикер. Компонент
🔧 Координатные системы тоже разные:
⚠️ Есть и ограничения. В браузерах рендеринг 3D-контента через простой способ медленный: Flutter не композитит canvas напрямую, поэтому пиксели приходится считывать обратно. Это добавляет задержку в один кадр. Поэтому для полноэкранного 3D нужен именно полный режим интеграции.
📊 Производительность оптимизирована через инстансинг. Выстрелы — это отдельные компоненты Flame с хитбоксами, но отрисовываются они одним вызовом через
🎮 Игра использует детерминизм через
🔗 Полезные ссылки
flame_flutter3d на pub.dev
Исходный код на GitHub
🔗 Полезные ссылки
📦 flame_flutter3d
💻 flutter3d
📰 Читать оригинал на Habr
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr
Представьте: вы пишете 2D-игру на Flame, но хотите добавить в неё полноценный 3D-мир. Звучит как боль? Разработчики из pleiondev решили эту задачу, создав мост между 2D-логикой и 3D-рендерингом. Результат — браузерный шутер River Sortie в стиле классического River Raid, где самолёт летит над бесконечной рекой, уничтожая танкеры и мосты.
🚀 Ключевая фишка — пакет flame_flutter3d. Он позволяет встраивать 3D-модели прямо в 2D-сцену Flame. Есть два режима: простой (одна модель через
Model3dComponent) и полный (отдельный 3D-мир с камерой и физикой). Во второй вариант и упирается River Sortie.💡 Архитектурно это выглядит как
Stack: снизу 3D-сцена, сверху 2D-логика Flame. Так сделано не случайно: в браузере 3D-поверхность — это platform view, и именно она ловит события мыши. Поэтому интерактивные элементы игры должны быть «выше» в дереве виджетов.⚡️ Главная проблема интеграции — синхронизация времени. Два независимых таймера (для 2D и 3D) неизбежно рассинхронизируются. Решение — единый тикер. Компонент
BridgeClock с приоритетом 1 << 20 запускается последним: сначала Flame обновляет логику, затем позиции переносятся в 3D, и только потом рендерится кадр.🔧 Координатные системы тоже разные:
Vector2 в Flame и Vector3 в 3D. Чтобы не путаться, введён класс BridgePlane. Он централизует преобразование осей. Например, в режиме ground (вид сверху) ось Y из Flame становится осью Z в 3D-сцене. Это предотвращает скрытые баги с зеркальным отражением объектов.⚠️ Есть и ограничения. В браузерах рендеринг 3D-контента через простой способ медленный: Flutter не композитит canvas напрямую, поэтому пиксели приходится считывать обратно. Это добавляет задержку в один кадр. Поэтому для полноэкранного 3D нужен именно полный режим интеграции.
📊 Производительность оптимизирована через инстансинг. Выстрелы — это отдельные компоненты Flame с хитбоксами, но отрисовываются они одним вызовом через
InstancedObject3dComponent. Это критично при частоте стрельбы до 5 выстрелов в секунду.🎮 Игра использует детерминизм через
HasFixedStep. Логика работает фиксированными шагами, поэтому трасса реки (генерируемая по seed) будет идентична на устройствах с экранами 60 Гц и 120 Гц. Столкновения обрабатываются стандартными хитбоксами Flame, а визуальные эффекты (крен самолёта, взрывы) отделены от игровой логики.🔗 Полезные ссылки
flame_flutter3d на pub.dev
Исходный код на GitHub
🔗 Полезные ссылки
📦 flame_flutter3d
💻 flutter3d
📰 Читать оригинал на Habr
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #flutterpulsehabr
👍2👎1
Обновлённые пакеты за последние 24 часа
pdf_document 6.0.0
Пакет для работы с PDF на чистом Dart. Синхронизация ограничений зависимостей с пакетом dart-pdf.
👍 Лайки: 1, 📥 Скачиваний: 9.7K
https://pub.dev/packages/pdf_document
pdf_cos 6.0.0
Низкоуровневый слой для работы с PDF-файлами. Добавлен метод trimDecodedStreamCache() для освобождения памяти, синхронизированы зависимости.
👍 Лайки: 1, 📥 Скачиваний: 9.9K
https://pub.dev/packages/pdf_cos
desktop_updater 3.2.1
Плагин для автоматического обновления десктопных приложений. Улучшена надежность, безопасность и оптимизация сети, исправлены UI-подписки.
👍 Лайки: 53, 📥 Скачиваний: 5.8K
https://pub.dev/packages/desktop_updater
chuck_interceptor 3.1.3
HTTP-инспектор для Flutter. Обновлены зависимости, оптимизированы импорты в модуле сохранения данных.
👍 Лайки: 72, 📥 Скачиваний: 7.3K
https://pub.dev/packages/chuck_interceptor
pdf_graphics 6.0.0
Ядро рендеринга для Dart-приложений. Добавлен PdfStreamingCommandWriter, улучшена политика управления памятью воркеров.
👍 Лайки: 1, 📥 Скачиваний: 8.8K
https://pub.dev/packages/pdf_graphics
dart_nats 1.5.0
Клиентская библиотека для системы сообщений NATS. Исправлена логика повторных подключений, устранен «шторм» подключений при ошибке TLS.
👍 Лайки: 39, 📥 Скачиваний: 4.0K
https://pub.dev/packages/dart_nats
Поддержать канал
FlutterPulse — канал о мире Flutter!
#pdf_document #pdf_cos #desktop_updater #chuck_interceptor #pdf_graphics #dart_nats #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
pdf_document 6.0.0
Пакет для работы с PDF на чистом Dart. Синхронизация ограничений зависимостей с пакетом dart-pdf.
👍 Лайки: 1, 📥 Скачиваний: 9.7K
https://pub.dev/packages/pdf_document
pdf_cos 6.0.0
Низкоуровневый слой для работы с PDF-файлами. Добавлен метод trimDecodedStreamCache() для освобождения памяти, синхронизированы зависимости.
👍 Лайки: 1, 📥 Скачиваний: 9.9K
https://pub.dev/packages/pdf_cos
desktop_updater 3.2.1
Плагин для автоматического обновления десктопных приложений. Улучшена надежность, безопасность и оптимизация сети, исправлены UI-подписки.
👍 Лайки: 53, 📥 Скачиваний: 5.8K
https://pub.dev/packages/desktop_updater
chuck_interceptor 3.1.3
HTTP-инспектор для Flutter. Обновлены зависимости, оптимизированы импорты в модуле сохранения данных.
👍 Лайки: 72, 📥 Скачиваний: 7.3K
https://pub.dev/packages/chuck_interceptor
pdf_graphics 6.0.0
Ядро рендеринга для Dart-приложений. Добавлен PdfStreamingCommandWriter, улучшена политика управления памятью воркеров.
👍 Лайки: 1, 📥 Скачиваний: 8.8K
https://pub.dev/packages/pdf_graphics
dart_nats 1.5.0
Клиентская библиотека для системы сообщений NATS. Исправлена логика повторных подключений, устранен «шторм» подключений при ошибке TLS.
👍 Лайки: 39, 📥 Скачиваний: 4.0K
https://pub.dev/packages/dart_nats
Поддержать канал
FlutterPulse — канал о мире Flutter!
#pdf_document #pdf_cos #desktop_updater #chuck_interceptor #pdf_graphics #dart_nats #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Обновлённые пакеты за последние 24 часа
better_player 1.22.0
Кроссплатформенный видеоплеер для Flutter. Добавлена поддержка субтитров TTML, DFXP и XML, обновлен плагин для macOS.
👍 Лайки: 1.3K, 📥 Скачиваний: 4.6K
https://pub.dev/packages/better_player
image_picker_plus 1.0.1
Выбор, кроп и фильтрация медиафайлов. Улучшена Web-совместимость (Wasm-ready), оптимизированы зависимости.
👍 Лайки: 67, 📥 Скачиваний: 92
https://pub.dev/packages/image_picker_plus
js_widget_runtime 0.4.153
Запуск JavaScript-виджетов как нативного UI в Flutter. Техническое обновление (автоматический патч).
👍 Лайки: 0, 📥 Скачиваний: 15.8K
https://pub.dev/packages/js_widget_runtime
otzaria_search_engine 0.9.0
Rust-движок полнотекстового поиска. Breaking change в механизме подсветки, поддержка текстовых вариантов (Ketiv/Qere).
👍 Лайки: 0, 📥 Скачиваний: 7.9K
https://pub.dev/packages/otzaria_search_engine
device_preview_plus 2.9.5
Симуляция отображения приложения на разных устройствах в десктопной среде. Обновлена зависимость Flutter до 3.47.6.
👍 Лайки: 74, 📥 Скачиваний: 13.7K
https://pub.dev/packages/device_preview_plus
firestore_cache 2.21.4
Чтение данных из Firestore по схеме «сначала кэш, затем сервер». Обновлена зависимость Flutter до v3.47.6.
👍 Лайки: 107, 📥 Скачиваний: 2.2K
https://pub.dev/packages/firestore_cache
Поддержать канал
FlutterPulse — канал о мире Flutter!
#better_player #image_picker_plus #js_widget_runtime #otzaria_search_engine #device_preview_plus #firestore_cache #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
better_player 1.22.0
Кроссплатформенный видеоплеер для Flutter. Добавлена поддержка субтитров TTML, DFXP и XML, обновлен плагин для macOS.
👍 Лайки: 1.3K, 📥 Скачиваний: 4.6K
https://pub.dev/packages/better_player
image_picker_plus 1.0.1
Выбор, кроп и фильтрация медиафайлов. Улучшена Web-совместимость (Wasm-ready), оптимизированы зависимости.
👍 Лайки: 67, 📥 Скачиваний: 92
https://pub.dev/packages/image_picker_plus
js_widget_runtime 0.4.153
Запуск JavaScript-виджетов как нативного UI в Flutter. Техническое обновление (автоматический патч).
👍 Лайки: 0, 📥 Скачиваний: 15.8K
https://pub.dev/packages/js_widget_runtime
otzaria_search_engine 0.9.0
Rust-движок полнотекстового поиска. Breaking change в механизме подсветки, поддержка текстовых вариантов (Ketiv/Qere).
👍 Лайки: 0, 📥 Скачиваний: 7.9K
https://pub.dev/packages/otzaria_search_engine
device_preview_plus 2.9.5
Симуляция отображения приложения на разных устройствах в десктопной среде. Обновлена зависимость Flutter до 3.47.6.
👍 Лайки: 74, 📥 Скачиваний: 13.7K
https://pub.dev/packages/device_preview_plus
firestore_cache 2.21.4
Чтение данных из Firestore по схеме «сначала кэш, затем сервер». Обновлена зависимость Flutter до v3.47.6.
👍 Лайки: 107, 📥 Скачиваний: 2.2K
https://pub.dev/packages/firestore_cache
Поддержать канал
FlutterPulse — канал о мире Flutter!
#better_player #image_picker_plus #js_widget_runtime #otzaria_search_engine #device_preview_plus #firestore_cache #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Обзор пакетов на тему Parsing & Other Text Utilities
characters 1.4.1
Пакет позволяет работать со строками как с последовательностью графемных кластеров, предотвращая некорректное разбиение эмодзи и составных символов. Он предоставляет класс Characters и итератор CharacterRange для безопасной навигации и манипуляций с текстом на уровне воспринимаемых пользователем символов.
👍 Лайки: 506, 📥 Скачиваний: 9.4M
📅 Обновлено: 15 months ago
https://pub.dev/packages/characters
quran 1.4.1
Предоставляет доступ к арабскому тексту Корана, аудио-ссылкам и подробным данным о сурах, аятах и джузах. Также поддерживает поиск слов и переводы на несколько языков, включая русский.
👍 Лайки: 300, 📥 Скачиваний: 3.3K
📅 Обновлено: 13 months ago
https://pub.dev/packages/quran
petitparser 7.1.0
Позволяет создавать быстрые и типобезопасные парсеры на Dart, собирая их из простых компонентов. Пакет поддерживает композицию, преобразование данных в типизированные модели и отладку прямо в IDE.
👍 Лайки: 402, 📥 Скачиваний: 12.8M
📅 Обновлено: 7 days ago
https://pub.dev/packages/petitparser
clipboard 3.0.14
Расширяет возможности буфера обмена в Flutter, поддерживая работу с текстом, HTML и изображениями. Обеспечивает кроссплатформенную совместимость с Android, iOS, Web и Windows, включая мониторинг изменений и обработку ошибок.
👍 Лайки: 643, 📥 Скачиваний: 117K
📅 Обновлено: 8 months ago
https://pub.dev/packages/clipboard
string_validator 1.2.0
Пакет для валидации и санитизации строк в Dart, являющийся форком validator.dart. Предоставляет набор функций для проверки форматов (email, URL, IP, UUID) и очистки данных, включая удобные extension methods.
👍 Лайки: 469, 📥 Скачиваний: 208K
📅 Обновлено: 15 months ago
https://pub.dev/packages/string_validator
iregexp 0.2.0
Реализация формата I-Regexp (RFC 9485) для Dart, которая валидирует паттерны и использует встроенный класс RegExp.
👍 Лайки: 3, 📥 Скачиваний: 312K
📅 Обновлено: 15 months ago
https://pub.dev/packages/iregexp
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #characters #quran #petitparser #clipboard #string_validator #iregexp
characters 1.4.1
Пакет позволяет работать со строками как с последовательностью графемных кластеров, предотвращая некорректное разбиение эмодзи и составных символов. Он предоставляет класс Characters и итератор CharacterRange для безопасной навигации и манипуляций с текстом на уровне воспринимаемых пользователем символов.
👍 Лайки: 506, 📥 Скачиваний: 9.4M
📅 Обновлено: 15 months ago
https://pub.dev/packages/characters
quran 1.4.1
Предоставляет доступ к арабскому тексту Корана, аудио-ссылкам и подробным данным о сурах, аятах и джузах. Также поддерживает поиск слов и переводы на несколько языков, включая русский.
👍 Лайки: 300, 📥 Скачиваний: 3.3K
📅 Обновлено: 13 months ago
https://pub.dev/packages/quran
petitparser 7.1.0
Позволяет создавать быстрые и типобезопасные парсеры на Dart, собирая их из простых компонентов. Пакет поддерживает композицию, преобразование данных в типизированные модели и отладку прямо в IDE.
👍 Лайки: 402, 📥 Скачиваний: 12.8M
📅 Обновлено: 7 days ago
https://pub.dev/packages/petitparser
clipboard 3.0.14
Расширяет возможности буфера обмена в Flutter, поддерживая работу с текстом, HTML и изображениями. Обеспечивает кроссплатформенную совместимость с Android, iOS, Web и Windows, включая мониторинг изменений и обработку ошибок.
👍 Лайки: 643, 📥 Скачиваний: 117K
📅 Обновлено: 8 months ago
https://pub.dev/packages/clipboard
string_validator 1.2.0
Пакет для валидации и санитизации строк в Dart, являющийся форком validator.dart. Предоставляет набор функций для проверки форматов (email, URL, IP, UUID) и очистки данных, включая удобные extension methods.
👍 Лайки: 469, 📥 Скачиваний: 208K
📅 Обновлено: 15 months ago
https://pub.dev/packages/string_validator
iregexp 0.2.0
Реализация формата I-Regexp (RFC 9485) для Dart, которая валидирует паттерны и использует встроенный класс RegExp.
👍 Лайки: 3, 📥 Скачиваний: 312K
📅 Обновлено: 15 months ago
https://pub.dev/packages/iregexp
FlutterPulse — канал о мире Flutter!
#flutter #dart #pubdev #FlutterPulse #FlutterPulseThemedPackages #characters #quran #petitparser #clipboard #string_validator #iregexp