es
Feedback
Flutter Pulse

Flutter Pulse

Ir al canal en Telegram

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

Mostrar más
1 022
Suscriptores
+124 horas
+17 días
+330 días
Archivo de publicaciones
🚀 🔥 Вышел Flutter 3.32.8! 🔥 Команда Flutter продолжает прокачивать движок — свежая версия 3.32.8 уже здесь! Мы собрали для вас самые заметные изменения 👇 🆕 Что нового: 🔧 iOS + macOS 15: возможен крэш при отсутствии прав. Решение: включить mDNS permissions 🧱 Android: добавлен новый API для запроса альтернативной поверхности у embedder'а 🍏 Исправлено: hasUnifiedMemory теперь не вызывается на macOS до 10.15 ⌨️ На iOS вызов TextInput.hide больше не стирает текст в активном поле ввода (ура!) Полный список здесь 👉 @FlutterPulse #Flutter  #FlutterUpdate #iOSDev #AndroidDev #FlutterPulse #MobileDev #ReleaseNotes

Самые лучшие обновлённые пакеты за последние 24 часа flutter_webrtc Пакет для работы с WebRTC в приложениях Flutter, получил обновление. Этот пакет позволяет использовать функции аудио- и видео-связи, обмена данными и другие возможности WebRTC в приложениях для мобильных устройств, настольных компьютеров и веб-приложений. 👍 Лайки: 1250, 📥 Скачиваний: 63.7К https://pub.dev/packages/flutter_webrtc stream_chat_flutter Пакет для создания чат-приложений, обновлён до версии 9.15.0! В обновлении добавлены новые свойства и методы, исправлены ошибки. 👍 Лайки: 374, 📥 Скачиваний: 18К https://pub.dev/packages/stream_chat_flutter custom_lint Пакет для создания пользовательских правил линтинга в Dart, обновлён до версии 0.8.0! В новой версии добавлена поддержка analyzer 7.5.0. 👍 Лайки: 240, 📥 Скачиваний: 1.9М https://pub.dev/packages/custom_lint custom_lint_core Пакет для создания собственных правил и исправлений линтера, обновлён до версии 0.8.0! Теперь поддерживает analyzer 7.5.0. 👍 Лайки: 4, 📥 Скачиваний: 2М https://pub.dev/packages/custom_lint_core video_player_android Пакет для воспроизведения видео в Android-приложениях, обновлён до версии 2.8.9! В новой версии изменена структура коммуникации между кодом на Dart и Java. 👍 Лайки: 28, 📥 Скачиваний: 2.9М https://pub.dev/packages/video_player_android flutter_local_notifications Пакет для локальных уведомлений в приложениях Flutter, обновлён до версии 19.4.0! Теперь доступно чтение dataMimeType и dataUri при вызове getActiveNotifications() для Android-уведомлений в стиле messaging. 👍 Лайки: 7040, 📥 Скачиваний: 1.3М https://pub.dev/packages/flutter_local_notifications #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #flutter_webrtc #stream_chat_flutter #custom_lint #custom_lint_core #video_player_android #flutter_local_notifications

photo content

Новость из surf_flutter: 🔥 Новость для всех любителей Flutter и Dart! 🤩 У меня есть супер-крутая новость для вас! 🤓 Айнура, опытный Flutter-разработчик из Surf, написал статью о том, как оживить поиск с помощью эффекта «пишущей машинки» 📝! Вы узнаете, как создать необычный виджет, который печатает и стирает подсказки, и даже сможете настроить анимацию 🎥! Это идеальная фича, чтобы сделать ваше приложение еще более интересным и интерактивным 🤩! Читайте статью и добавляйте новую фичу в свой проект! 👉 Не забудьте подписаться на канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений в мире Flutter и Dart! 🚀 #flutter #dart #flutterpulse 🚀💻

Обзор пакетов на тему "Изображения" для Flutter и Dart 📸 Image - пакет для загрузки, сохранения и обработки изображений в различных форматах! 📁 Поддерживает форматы: JPG, PNG, GIF, BMP, TIFF и многие другие. Используется в командной строке, Flutter и веб-приложениях. 👍 Лайки: 1680, 📥 Скачиваний: 3.18М Последнее обновление: 4 месяца назад https://pub.dev/packages/image Extended Image - популярный пакет для Flutter, расширяющий функциональность компонента Image! 📸 Добавляет поддержку кэширования изображений, зума, редактирования и многое другое. 👍 Лайки: 1960, 📥 Скачиваний: 239К Последнее обновление: 3 месяца назад https://pub.dev/packages/extended_image Octo Image - библиотека для показа placeholder'ов, ошибок и преобразования изображений! 🔄 Рекомендуется использовать с CachedNetworkImage версии 2.2.0 или новее. 👍 Лайки: 748, 📥 Скачиваний: 2.3М Последнее обновление: 11 месяцев назад https://pub.dev/packages/octo_image Blur - новый пакет для Flutter, позволяющий легко добавить эффект размытия к виджетам и изображениям! 🔮 Создайте красивые и стильные интерфейсы для ваших приложений. 👍 Лайки: 339, 📥 Скачиваний: 46.8К Последнее обновление: 3 месяца назад https://pub.dev/packages/blur Cached Network Image - пакет для загрузки изображений из интернета и хранения их в кэше! 📈 Экономит трафик и ускоряет загрузку приложения. 👍 Лайки: 6710, 📥 Скачиваний: 2.22М Последнее обновление: 11 месяцев назад https://pub.dev/packages/cached_network_image Flutter SVG - пакет для отрисовки SVG-файлов в Flutter! 🖼️ Легко добавляйте векторные изображения в ваши приложения. 👍 Лайки: 5660, 📥 Скачиваний: 3.25М Последнее обновление: 38 дней назад https://pub.dev/packages/flutter_svg #Image #ExtendedImage #OctoImage #Blur #CachedNetworkImage #FlutterSVG #Flutter #Dart #PubDev #FlutterPulse #FlutterPulseThemedPackages

Ждём... или используем скелетную анимацию? При загрузке контента важно сделать ожидание для пользователя максимально комфортным. Есть два основных способа сделать это: использовать стандартный индикатор загрузки или скелетную анимацию. Индикатор загрузки - простой и понятный способ показать, что контент загружается. Flutter предоставляет встроенный виджет CircularProgressIndicator.adaptive(), который адаптируется под разные платформы.
// Создает индикатор, который является 
// [CupertinoActivityIndicator] на iOS
// [CircularProgressIndicator] на других платформах
CircularProgressIndicator.adaptive();
Для более широких возможностей можно использовать пакеты, такие как: - sleek_circular_slider - flutter_spinkit Скелетная анимация дает пользователю представление о том, какого типа контент загружается (изображение, текст, длинный текст и т.д.). Это воспринимается как более быстрое и плавное. Скелетные экраны кажутся пользователю более короткими по продолжительности, чем пустой экран с индикатором загрузки. Для реализации скелетной анимации можно использовать пакет better_skeleton. Оцените новую рубрику и напишите своё мнение в комментарии! 🤔💬 Все подобные новости можно найти по хэштегу #FlutterPulseTips #flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #UIUX #LoadingAnimation #AppDevelopment #FlutterTips

🚀 Архитектура Flutter: Секрет гибкости и масштабируемости! 🔥 Устали от хаоса в коде? В новом видео на нашем канале эксперт Руслан Цицер разбирает ключевую разницу между архитектурой и структурой папок во Flutter — и это не одно и то же! ✨ Почему это важно? Правильная архитектура позволяет: ✅ Менять структуру проекта без боли (feature-first или layer-first — выбор за вами!) ✅ Легко масштабировать приложение ✅ Делать рефакторинг без страха всё сломать ✅ Создавать чистый, поддерживаемый код для командной работы 📺 В видео детально разобрано: 🔹 Реальный проект (Rick and Morty API) с избранным и пагинацией 🔹 Как разделить "монолитный" StatefulWidget на логические слои (data, domain, presentation) 🔹 Практические шаги рефакторинга: от "одной папки" до feature-first структуры 🔹 Важность абстракций (репозитории!) для гибкости 🔹 Работа с зависимостями и state-менеджментом 💡 Главный инсайт: «При хорошей архитектуре можно использовать ЛЮБУЮ удобную структуру проекта!» 👉 Смотрите разбор + live-кодинг здесь: Выстроим архитектуру на простом примере и посмотрим разные структуры папок ❤️ Поддержите автора: 👍 Лайкните видео, если полезно! #Flutter #Dart #FlutterPulse #FlutterPulseTips 🔎 Ищите больше уроков по хэштегу #FlutterPulseYoutube!

Самые лучшие обновлённые пакеты за последние 24 часа easy_localization 3.0.8 Пакет easy_localization используется для быстрой и простой интернационализации приложений Flutter. Он поддерживает переводы на множество языков, загрузку переводов из файлов JSON, CSV, Yaml, Xml и многое другое. В новой версии были проведены аудит и обновления кода, улучшена структура проекта и рабочие процессы CI/CD. 👍 Лайки: 3620, 📥 Скачиваний: 54.4К https://pub.dev/packages/easy_localization flutter_background_service_android 6.3.1 Используется для работы с фоновыми сервисами в Android-приложениях, созданных с помощью Flutter. В этом обновлении исправлены проблемы с поддержкой AGP 8.0+ и разрешением Alarms & reminders на Android 12. 👍 Лайки: 27, 📥 Скачиваний: 76.1К https://pub.dev/packages/flutter_background_service_android purchases_flutter 9.1.0 Теперь доступна поддержка виртуальной валюты для iOS и Android. Более 164К скачиваний и 818 лайков. 👍 Лайки: 818, 📥 Скачиваний: 164К https://pub.dev/packages/purchases_flutter freeRASP 7.2.1 Этот пакет обеспечивает защиту и мониторинг безопасности мобильных приложений. В обновлении исправлена проблема с родным фреймворком для iOS. 👍 Лайки: 531, 📥 Скачиваний: 29.8К https://pub.dev/packages/freeRASP pro_image_editor 10.5.4 Этот пакет предназначен для редактирования изображений в приложениях Flutter. В новой версии добавлена функция удаления редактируемых текстовых слоев, если новый текст пустой. 👍 Лайки: 432, 📥 Скачиваний: 25.5К https://pub.dev/packages/pro_image_editor tutorial_coach_mark 1.3.1 Этот пакет позволяет создавать красивые и простые туториалы для ваших приложений. В обновлении добавлена анимация preserve и возможность отключить кнопку "Назад" по умолчанию. 👍 Лайки: 1450, 📥 Скачиваний: 168К https://pub.dev/packages/tutorial_coach_mark #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #easy_localization #flutter_background_service_android #purchases_flutter #freeRASP #pro_image_editor #tutorial_coach_mark

photo content

Обзор пакетов на тему Widget Extension 📦️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️

🚀 Упрощаем свою жизнь! 🚀 Узнайте, как подключить Dart MCP Server к VS Code и расширить возможности вашего AI-агента! 🤖 С помощью Dart MCP Server ваш AI-агент сможет получать полный контекст вашего приложения, включая runtime-контекст, анализ кода и управление зависимостями и тестами 📊. Это значит, что агент сможет целенаправленно исправлять ошибки и вносить изменения в код, без необходимости делать предположения на основе ограниченных данных 🤩. Хотите быть в курсе последних новостей и разработок в мире Flutter, Dart и FlutterPulse? 🤔 Тогда стоит подписаться на канал FlutterPulse, чтобы не пропустить ничего важного! 📣 #Flutter #Dart #FlutterPulse 🚀💻🔥

Правило 8 для интервалов в дизайне Генерация визуальной гармонии на подсознательном уровне Вы когда-нибудь задумывались, что делает дизайн визуально приятным? 🤔 Одним из секретов является соблюдение правила 8 при проектировании интервалов между элементами! 📐 Что такое правило 8? Теория довольно проста: все элементы в вашем дизайне кратны 8 по ширине и высоте, как и расстояния между ними. 📏 Это создает ощущение гармонии и порядка, делая интерфейс более интуитивным и комфортным для пользователя. 😌 Давайте рассмотрим пример реализации этого правила во Flutter:


class AppSpacer extends StatelessWidget {
  final double? width;
  final double? height;

  const AppSpacer._({Key? key, this.width, this.height}) : super(key: key);

  factory AppSpacer.p32() => const AppSpacer._(height: 32, width: 32);
  factory AppSpacer.p24() => const AppSpacer._(height: 24, width: 24);
  factory AppSpacer.p16() => const AppSpacer._(height: 16, width: 16);
  factory AppSpacer.p8() => const AppSpacer._(height: 8, width: 8);

  @override
  Widget build(BuildContext context) {
    return SizedBox(
      width: width,
      height: height,
    );
  }
}

Этот код определяет виджет AppSpacer, который можно использовать для создания интервалов, кратных 8. 📝 Просто используйте один из фабричных конструкторов, таких как AppSpacer.p8(), AppSpacer.p16() и т.д., чтобы добавить нужный интервал в вашем интерфейсе. 👍 Оцените новую рубрику лайком 👍, если считаете её полезной! 💬 Поделитесь своими мыслями в комментариях! 💬 Все подобные новости можно найти по хэштегу #FlutterPulseTips #flutter #dart #flutterpulse #FlutterPulseTips #SpacingDesign #DesignTips #FlutterTips #UIUX #MobileDev #AppDev

Как создавать качественные интерфейсы 🚀 С помощью этой простой и эффективной системы, все элементы дизайна (ширина, высота, внутренние/внешние отступы) кратны 8 px 📏. Такой подход упрощает верстку, делает интерфейс визуально гармоничным и облегчает работу команды 💻. Используй класс AppSpacer, чтобы задавать отступы и размеры строго по системе 8: 8, 16, 24, 32 📊. Прочитай полную статью и узнай, как применить эту систему в своих проектах: Не забудь подписаться на канал @flutterpulse, чтобы быть в курсе всех последних новостей и обновлений 📱 #flutter #dart #flutterpulse 💻

🚀 Не используй StatefulWidget, пока не посмотришь это видео! Часть 2 🔥 Твой Flutter-код превращается в монолитного Франкенштейна? 🔥 Автор нового видео наглядно показывает, почему гигантские StatefulWidget'ы — это бомба замедленного действия 💣: ⚠️ Закидывая всё в один StatefulWidget, вы: • Стреляете себе в ногу 🤯 • Обрекаете на ад мердж-конфликтов 😱 • Получаете side-эффекты в неожиданных местах 🎯 В этом туториале Руслан разбирает реальный сложный экран (не абстрактный счётчик!) и показывает универсальные шаги декомпозиции: 🔧 7 шагов к спасению кода: 1️⃣ Выносим методы из State в отдельные функции 2️⃣ Создаём класс-модель для состояния 3️⃣ Переносим логику в модель 4️⃣ Подключаем ChangeNotifier + ListenableBuilder 5️⃣ Заменяем setState на вызовы методов модели 6️⃣ Дробим на компоненты с передачей модели 7️⃣ Внедряем InheritedWidget + const виджеты 💡 Ключевой принцип: после каждого шага функциональность должна сохраняться! Автор аккуратно демонстрирует рефакторинг "на живом примере" с: • Обработкой изображений 📸 • Диалоговыми окнами • Динамическим обновлением данных 👉 СМОТРЕТЬ ВИДЕО С ПРИМЕРАМИ КОДА 👈 💬 "В завтрашнем ролике: почему структура папок ≠ архитектура, и как разделить приложение на слои!" ✨ Подписывайтесь и смотрите другие кейсы по хэштегу #FlutterPulseYoutube! #Flutter #Dart #FlutterPulse #FlutterPulseTips #FlutterPulseYoutube #Refactoring #CleanCode #FlutterArchitecture #StatefulWidget #ComponentBasedUI

Самые лучшие обновлённые пакеты за последние 24 часа google_sign_in_android 7.0.3 Пакет google_sign_in_android используется для реализации входа в систему Google на Android-устройствах. В новой версии добавлены более подробные сведения и инструкции по устранению неполадок для настройки serverClientId через Firebase. 👍 Лайки: 11, 📥 Скачиваний: 906К https://pub.dev/packages/google_sign_in_android camera_avfoundation 0.9.7+1 Пакет camera_avfoundation используется для реализации камеры в приложениях для iOS. Теперь он разделен от пакета camera как федеративная реализация. 👍 Лайки: 11, 📥 Скачиваний: 190К https://pub.dev/packages/camera_avfoundation liquid_glass_renderer 0.1.1-dev.10 Пакет liquid_glass_renderer позволяет создавать потрясающий эффект "жидкого стекла" или "матового стекла" в ваших Flutter-приложениях. В новой версии исправлены ошибки, добавлены новые функции, такие как насыщенность и яркость, улучшено рассеивание света и многое другое. 👍 Лайки: 428, 📥 Скачиваний: 3.4К https://pub.dev/packages/liquid_glass_renderer very_good_cli 0.26.2 Пакет very_good_cli - это инструмент командной строки для Dart, позволяющий создавать новые проекты, запускать тесты и управлять зависимостями. В новой версии исправлены ошибки, улучшена работа с шаблонами и зависимостями. 👍 Лайки: 682, 📥 Скачиваний: 84.7К https://pub.dev/packages/very_good_cli pdfrx 2.0.3 Пакет pdfrx - быстрый и функциональный плагин для просмотра PDF-файлов в приложениях Flutter. В новой версии улучшен API контекстного меню для выделения текста, добавлена поддержка адаптивного toolbar и улучшено позиционирование якорей. 👍 Лайки: 235, 📥 Скачиваний: 183К https://pub.dev/packages/pdfrx flutter_polyline_points 3.0.1 Пакет flutter_polyline_points используется для декодирования polyline-пунктов из Google Maps Directions API и нового Google Routes API. В новой версии добавлена поддержка кастомных заголовков в запросах Routes API. 👍 Лайки: 632, 📥 Скачиваний: 63К https://pub.dev/packages/flutter_polyline_points #Flutter #Dart #PubDev #FlutterPulse #FlutterPulseBestPackages #google_sign_in_android #camera_avfoundation #liquid_glass_renderer #very_good_cli #pdfrx #flutter_polyline_points

photo content

🚀 Flutter Deep Linking & State Restoration: возвращаем пользователей туда, где они остановились! Привет, коллеги! 👋 Сегодня делимся 🔥горячим видео, которое перевернет ваше представление о навигации и UX во Flutter. Хотите, чтобы пользователи возвращались в тот самый экран даже после перезапуска приложения или перехода по ссылке? Тогда вам сюда! 💡 Что внутри? Открытый урок от Дмитрия Золотова (Flutter Developer, Yandex) для курса «Flutter Mobile Developer». На практике разбираем: - Диплинки во Flutter: схема, Universal Links, App Links — чем отличаются и где применять. - Навигация: когда брать Navigator 1.0, а когда переходить на мощный Router API (Navigator 2.0). - State Restoration: как сохранять состояние UI (скроллы, формы, данные) даже после выгрузки приложения. - Restorable Routes: автоматическое восстановление стека навигации — пользователь всегда возвращается в нужное место. - Живая демо: создаем приложение, которое запоминает путь пользователя и открывается по диплинку на правильном экране. 🎯 После просмотра вы научитесь: - Внедрять диплинки в мобильные и веб-приложения. - Выбирать оптимальную навигацию для сложных сценариев. - Сохранять и восстанавливать состояние интерфейса. - Использовать Restorable Routes для бесшовного UX. - Делать приложения, где пользователи никогда не теряются. 👨‍💻 Это must-see для: - Разработчиков сложных multi-screen приложений. - Тех, кто хочет повысить удержание пользователей. - Всем, кто боролся с "сбросом" состояния или диплинками. 💬 "Flutter — это не только UI, но и умный контроль над пользовательским опытом!" — Дмитрий Золотов. 👉 Смотрите и внедряйте: Youtube или VkVideo 🔔 Подписывайтесь на Flutter Pulse — впереди еще больше экспертных материалов! Ищите другие полезные ролики по хэштегу #FlutterPulseYoutube. #Flutter #Dart #FlutterPulse #FlutterPulseTips #FlutterPulseYoutube

Обзор пакетов на тему "Постоянная SQL-база данных" (Persistent SQL Database) Drift - реактивная библиотека для работы с базами данных на основе SQLite. Особенности: гибкость, богатые функции, модульность, безопасность, скорость и реактивность. Используется в производственных приложениях и имеет широкий спектр тестов. 👍 Лайки: 2110, 📥 Скачиваний: 408К. Последнее обновление 📅: 9 дней назад. https://pub.dev/packages/drift SqfEntity ORM - библиотека, позволяющая легко и быстро работать с базами данных SQLite в приложениях Flutter. 👍 Лайки: 281, 📥 Скачиваний: 2020. Последнее обновление 📅: 12 месяцев назад. https://pub.dev/packages/sqfentity sqflite_common_ffi - реализация базы данных SQLite для Flutter и Dart на основе sqflite. Позволяет работать с базами данных на Linux, MacOS, Windows, iOS и Android. 👍 Лайки: 305, 📥 Скачиваний: 139К. Последнее обновление 📅: 42 дня назад. https://pub.dev/packages/sqflite_common_ffi sqflite - популярный плагин для Flutter, позволяющий работать с базами данных SQLite на платформах iOS, Android и MacOS. 👍 Лайки: 5370, 📥 Скачиваний: 2.14М. Последнее обновление 📅: 5 месяцев назад. https://pub.dev/packages/sqflite sqlite3 - пакет для Dart, предоставляющий привязки к SQLite через dart:ffi. 👍 Лайки: 405, 📥 Скачиваний: 672К. Последнее обновление 📅: 7 дней назад. https://pub.dev/packages/sqlite3 sqflite_common - универсальный инструмент для работы с базами данных SQLite. 👍 Лайки: 71, 📥 Скачиваний: 1.42М. Последнее обновление 📅: 5 месяцев назад. https://pub.dev/packages/sqflite_common #Drift #SqfEntity #sqflite_common_ffi #sqflite #sqlite3 #sqflite_common #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages

Создание миниатюр изображений Привет, разработчики Flutter! 👋 Сегодня мы рассмотрим полезный совет по созданию миниатюр изображений с использованием пакета Image. 📸 Зачем создавать миниатюры? Перед загрузкой изображений в хранилище, например, Firebase Storage, полезно создать их уменьшенные версии. Это помогает оптимизировать производительность и снизить потребление трафика. 🚀 Пример кода:

import 'package:image/image.dart';

Future<List<int>> createJpg(File file, int maxWidth, int quality) async {
  var bytes = await file.readAsBytes();
  Image? image = decodeImage(bytes);
  var thumbnail = copyResize(image!, width: maxWidth);
  return encodeJpg(thumbnail, quality: quality);
}
В этом примере мы: 1. Читаем файл изображения как массив байтов. 2. Декодируем изображение. 3. Изменяем размер изображения, создавая миниатюру. 4. Кодируем миниатюру в формат JPEG с заданным качеством. Оцените нашу новую рубрику! 👍 Мы будем рады вашим отзывам о новых полезных советах и материалах, которые мы публикуем. Не стесняйтесь делиться своими мыслями! 💬 Все подобные новости и советы вы можете найти по хэштегу #FlutterPulseTips. 🔍 #flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #ImageProcessing #AppDevelopmentTips

Привет, коллеги! 👋 Представьте: вы приходите на проект, а там — монстр на 700 строк кода в одном StatefulWidget. 😱 Нужно добавить фичу, но любое изменение ломает код в неожиданных местах... Знакомо? Автор видео на живом примере показывает, как декомпозировать такого "монстра"! Уже через 20 минут вы научитесь: 🎯 Избавляться от side-эффектов при изменении кода 🎯 Упрощать добавление новых фич 🎯 Создавать поддерживаемую архитектуру 🔧 7 шагов декомпозиции: 1️⃣ Выносим методы из StatefulWidget в отдельный класс 2️⃣ Переносим поля состояния в отдельный объект 3️⃣ Декомпозируем методы бизнес-логики 4️⃣ Внедряем ChangeNotifier + ListenableBuilder 5️⃣ Заменяем методы стейта на вызовы нового класса 6️⃣ Разбиваем UI на компоненты 7️⃣ Внедряем InheritedWidget для передачи состояния 💡 В видео — наглядный пример со счётчиком (и готовый репозиторий с кодом!). А в завтра видео второй части — разбор сложных кейсов! 👇 Поддержите автора: 👍 Лайк — если полезно 💙 А вы уже подписаны на @FlutterPulse? Смотрите другие видео по тегу #FlutterPulseYoutube #Flutter #Dart #FlutterPulse #FlutterPulseTips #Refactoring #CleanCode #FlutterArchitecture #StatefulWidget #ComponentBasedUI