Flutter Pulse
528 subscribers
352 photos
775 links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
Новые пакеты за неделю

flutter_quick_nav
Плагин для навигации в Flutter, который упрощает переходы между экранами с помощью чистых и интуитивных методов. Он обеспечивает плавную анимацию затухания и упрощает навигацию, обертывая общие шаблоны, такие как push, replace и pushAndRemoveUntil.
👍 Лайки: 18, 📥 Скачиваний: 84
https://pub.dev/packages/flutter_quick_nav

easy_notify
Пакет для локальных уведомлений с поддержкой запланированных, повторяющихся и мгновенных уведомлений.
👍 Лайки: 25, 📥 Скачиваний: 117
https://pub.dev/packages/easy_notify

sign_in_with_apple_server
Позволяет создать бэкенд для авторизации через Apple.
Поддерживает валидацию токенов, обновление токенов и отзыв авторизации.
👍 Лайки: 1, 📥 Скачиваний: 478
https://pub.dev/packages/sign_in_with_apple_server

video_view
Пакет для легкого воспроизведения видео в приложениях Flutter.
Он поддерживает субтитры и переключение аудиодорожек, а также использует системные или приложенные компоненты для бесшовного воспроизведения.
👍 Лайки: 3, 📥 Скачиваний: 630
https://pub.dev/packages/video_view

native_file_preview
Предоставляет функцию предварительного просмотра файлов на платформах iOS и Android.
Поддерживает множество форматов файлов, включая PDF, изображения, документы и многое другое.
👍 Лайки: 12, 📥 Скачиваний: 64
https://pub.dev/packages/native_file_preview

material_design
Пакет для Flutter, который позволяет создавать красивые и последовательные интерфейсы, соответствующие официальным рекомендациям Material Design 3.
Он предоставляет мощный набор дизайн-токенов и готовых виджетов для создания приложений с современным дизайном.
👍 Лайки: 3, 📥 Скачиваний: 380
https://pub.dev/packages/material_design

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages
У нас есть супер-новость для вас! 🚀 Айнур, опытный Flutter-разработчик из Surf, только что опубликовал подробный материал о Pattern Matching в Dart 🐦. Это революционный подход, который преображает процесс обработки данных, состояний и коллекций! 🔄

Теперь вы сможете избавиться от bang operator и работать с несколькими переменными в элегантном стиле 💃. Айнур также покажет, как деструктурировать sealed-классы и использовать всю мощь switch выражений 🔥.

Хотите узнать все секреты Pattern Matching в Dart? 🤔 Тогда переходите по ссылке и читайте полную статью! 📚

И не забудьте подписаться на наш канал @flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 📱 #flutter #dart #flutterpulse 🚀💻
🔥1
Самые лучшие обновлённые пакеты за последние 24 часа

cloud_firestore 5.6.12
Плагин для Flutter, который позволяет использовать API Cloud Firestore в приложениях Flutter.
Убраны ошибки и улучшена производительность.
👍 Лайки: 3 690, 📥 Скачиваний: 986К
https://pub.dev/packages/cloud_firestore

firebase_auth 5.7.0
Популярный пакет для аутентификации в Firebase для Flutter. Теперь добавлена поддержка publish и addApplicationDelegate на macOS.
👍 Лайки: 4 160, 📥 Скачиваний: 1.1М
https://pub.dev/packages/firebase_auth

firebase_messaging 15.2.10
Плагин для Flutter, который позволяет использовать Firebase Cloud Messaging API. Теперь с обновленной зависимостью.
👍 Лайки: 3 800, 📥 Скачиваний: 1.7М
https://pub.dev/packages/firebase_messaging

firebase_core 3.15.2
Пакет для Flutter, который позволяет использовать Firebase Core API. Исправлена ошибка, вызывающая крах на iOS при включении автоматической сбора данных.
👍 Лайки: 3 900, 📥 Скачиваний: 2.8М
https://pub.dev/packages/firebase_core

test_api 0.7.7
Пакет предназначен для написания тестов и пока не рекомендуется для публичного использования. В новой версии расширен диапазон зависимостей для поддержки последней версии анализатора.
👍 Лайки: 23, 📥 Скачиваний: 7.8М
https://pub.dev/packages/test_api

test 1.26.3
Пакет test используется для написания и запуска тестов в Dart. В новой версии расширен диапазон зависимостей от пакета analyzer.
👍 Лайки: 597, 📥 Скачиваний: 6.6М
https://pub.dev/packages/test

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #cloud_firestore #firebase_auth #firebase_messaging #firebase_core #test_api #test
🚀 Взрывной гайд по тестированию во Flutter! Узнай всё о Unit, Widget, Golden и интеграционных тестах! 🧪

Привет, Flutter-разведчик! 👋 Только что наткнулся на мега-полезное видео от Школы мобильной разработки Яндекса (ШМР 2025), и спешу поделиться с тобой! Это не наш контент, но мы точно знаем — тебе обязательно нужно это увидеть. 🔥

🎯 Что тебя ждет в этом видео?
Unit-тесты: Глубокий разбор + практика написания тестов для бизнес-логики. Научишься использовать expect, матчеры и моки (mocktail).
🧩 Widget-тесты: Как тестировать UI? Работа с WidgetTester, Finder и хитрости анимаций (pumpAndSettle vs pump).
🖼 Golden-тесты & Alchemist: Магия визуального тестирования! Узнаешь, как избежать "платформенной зависимости" и автоматизировать проверку UI.
🤖 Интеграционные тесты & Patrol: Тестируем приложение "как пользователь" + взаимодействие с нативом (пермишены, уведомления, системные кнопки)!

🔥 Почему это стоит твоего времени?
👉 Авторы — практикующие разработчики Яндекс (Андрей Смирнов, Данил Лепаткин, Глеб).
👉 Никакой "воды" — только конкретные примеры кода и live-демонстрации.
👉 Фишки, о которых мало говорят: работа с анимациями, нативными диалогами, тонкости Alchemist и Patrol.
👉 Эмоционально и понятно — как будто друг объясняет!

🎬 Смотри прямо сейчас:
Тестирование — ШМР Flutter 2025

👀 Хочешь больше таких находок? Подпишись на канал и ищи по хэштегу #FlutterPulseYoutube!
🔔 Не пропусти следующую порцию полезностей — включай уведомления!

#Flutter #Dart #FlutterPulse #FlutterPulseTips #FlutterPulseYoutube

P.S. Уже посмотрел? Делись впечатлениями в комментариях! 👇 Какие темы по тестированию для тебя самые болезненные?
🤡1
Зачем использовать ключ виджета?

Ключи виджетов в Flutter: когда и почему они нужны? 🤔

В большинстве случаев вам не нужно использовать ключи... но есть ситуации, когда они крайне полезны! 😎

Новый виджет будет использован для обновления существующего элемента только если его ключ совпадает с ключом текущего виджета, связанного с этим элементом.

Ключи необходимы для:
- клонирования состояния виджета между несколькими страницами/вкладками 📑
- изменения порядка виджетов внутри списка 🔄
- сохранения позиции прокрутки 🕳️
- идентификации виджетов и их состояния 🔍
- идентификации для тестирования 🧪

Ключ позволяет Flutter связать элемент из elementTree с виджетом 🔗



class MyWidget extends StatefulWidget {
@override
_MyWidgetState createState() => _MyWidgetState();
}

class _MyWidgetState extends State<MyWidget> {
@override
Widget build(BuildContext context) {
// Используем ключ для сохранения состояния
return KeyedSubtree(
key: ObjectKey('my_unique_key'), // Уникальный ключ
child: MyStatefulChild(),
);
}
}



Если вы поменяете местами два виджета с ключами в дереве виджетов, Flutter также поменяет их местами в дереве элементов 🔄

Оцените нашу новую рубрику и напишите ваше мнение в комментариях! 💬

Все подобные новости можно найти по хэштегу #FlutterPulseTips

#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #WidgetKeys #FlutterTips #AppDevelopment #UIUX #CodingTips
Flutter, Flame и RPG: Лучшие практики после двух с половиной лет gamedev'а 🚀💻!
Узнайте, как создать огромные 2D RPG с открытым миром на фреймворке Flame и оптимизировать производительность в играх 🎮!
В новой статье вы узнаете, как использовать ячеечную структуру данных и оптимизировать обновление и отрисовку объектов, чтобы повысить FPS в вашей игре 📈!
Также вы узнаете, как уменьшить нагрузку на систему, используя ValueNotifier и оптимизированные компоненты для статичных и движущихся объектов 🔄!
И, конечно, умное управление обновлением в физических движках Box2d и Forge2d 🤖!
Читайте полную статью здесь и узнайте все секреты разработки игр на Flutter и Dart! 📚
#Flutter #Dart #FlutterPulse #Gamedev #RPG #Flame #Box2d #Forge2d #ValueNotifier #Оптимизация #Игры #Программирование 🚀💻🎮
👍1
Обзор пакетов на тему "Разработка игр" (Game Development)

Flame Audio - добавьте звук в ваши игры на Flame! 🎵
Этот пакет позволяет легко добавлять аудио-функции в ваши игры, включая воспроизведение фоновой музыки, звуковых эффектов и др.
👍 Лайки: 102, 📥 Скачиваний: 17.4К
Последнее обновление: 8 дней назад
https://pub.dev/packages/flame_audio

Forge2D - порт известного физического движка Box2D на Dart! 🤖
Используйте его для создания реалистичных симуляций в своих проектах на Flame или самостоятельно в Dart.
👍 Лайки: 124, 📥 Скачиваний: 15.3К
Последнее обновление: 7 месяцев назад
https://pub.dev/packages/forge2d

Rive Flutter - библиотека времени выполнения для Rive, инструмента интерактивного дизайна и анимации в реальном времени! 🚀
Используйте Rive Flutter для создания интерактивных анимаций и дизайна в ваших приложениях на Flutter!
👍 Лайки: 1870, 📥 Скачиваний: 336К
Последнее обновление: 7 месяцев назад
https://pub.dev/packages/rive

Games Services - поддерживает сервисы Game Center и Google Play Games! 🏆
Используется в таких приложениях, как Monkey Banana и Nonogram Colors.
👍 Лайки: 164, 📥 Скачиваний: 2.55К
Последнее обновление: 2 месяца назад
https://pub.dev/packages/games_services

Bonfire - мощный инструмент для создания RPG-игр и подобных проектов на основе FlameEngine! 🔥
Используйте его для создания игр с различными перспективами и возможностями.
👍 Лайки: 492, 📥 Скачиваний: 2.15К
Последнее обновление: 42 дня назад
https://pub.dev/packages/bonfire

Flame - игровой движок на основе Flutter, который предоставляет полный набор решений для общих проблем, с которыми сталкиваются игры, разработанные на Flutter! 🚀
👍 Лайки: 2200, 📥 Скачиваний: 83.8К
Последнее обновление: 8 дней назад
https://pub.dev/packages/flame

#Flame #FlameAudio #Forge2D #RiveFlutter #GamesServices #Bonfire #Flutter #Dart #PubDev #FlutterPulse #FlutterPulseThemedPackages
Привет, разработчики! 🚀 Сегодня я хочу рассказать вам о том, как улучшить UI-опыт в ваших Flutter web-приложениях 🌐. Вы знаете, что даже в самом продуманном интерфейсе могут быть моменты, когда пользователю нужны подсказки 🤔. Например, у вас есть кнопка с иконкой, но что она делает? 🤷‍♂️

Чтобы закрыть такие "дыры" в UX во Flutter, есть такой виджет как Tooltip 📝. Это небольшая, но очень полезная вещь, которая может заметно улучшить опыт пользователя 👍. Tooltip - это всплывающая подсказка, которая появляется при долгом тапе на мобильных устройствах или при наведении курсора в вебе и на десктопе 🖱.

Вы можете использовать Tooltip для иконок без текста или для кнопок с непонятным назначением 🤔. Он реализован через Overlay, чтобы подсказка могла отображаться поверх всех виджетов 📈. Положение, задержка и продолжительность отображения настраиваются через различные параметры 📊.

Базовое использование Tooltip очень простое:

Tooltip(message: 'Добавить', child: Icon(Icons.add),)

Но вы также можете кастомизировать его, задав фон, стили, задержки и даже используя rich-контент 📄.

Некоторые виджеты уже встроенно поддерживают тултипы, например, IconButton 📝. Но при использовании Tooltip не стоит перебарщивать 🚫. Добавляйте подсказки только в те места, где это действительно необходимо! 🙏

Если вам хочется больше контроля, то можете сделать собственный тултип через OverlayEntry 📈.

Хотите узнать больше о Flutter и Dart? 🤔 Подписывайтесь на канал flutterpulse и оставайтесь в курсе последних новостей и обновлений 📣! #flutter #dart #flutterpulse ❤️

Ссылка на полную статью здесь 📄
Самые лучшие обновлённые пакеты за последние 24 часа

talker_logger 4.9.3 - пакет для простой и расширенной регистрации событий, имеет фильтры, форматтеры, настраиваемые журналы и уровни регистрации.
В обновлении были обновлены зависимости gradle и com.android.application.
👍 Лайки: 49, 📥 Скачиваний: 280К
https://pub.dev/packages/talker_logger

Talker 4.9.3 - продвинутый обработчик ошибок и логгер для приложений Dart и Flutter.
Он позволяет логировать действия приложения, обрабатывать исключения и ошибки, показывать оповещения и делиться отчетами о логах.
👍 Лайки: 736, 📥 Скачиваний: 277К
https://pub.dev/packages/talker

syncfusion_flutter_datepicker 29.1.39 - пакет для создания датапикеров в приложениях Flutter.
Теперь минимальная версия Dart обновлена до 3.7.
👍 Лайки: 1580, 📥 Скачиваний: 200К
https://pub.dev/packages/syncfusion_flutter_datepicker

syncfusion_flutter_calendar 30.1.41 - пакет для создания календарей в приложениях Flutter с различными представлениями: день, неделя, рабочая неделя, месяц и т.д.
В новой версии обновлен пакет timezone до версии 0.10.1 и улучшена совместимость с Flutter SDK 3.32.0.
👍 Лайки: 1510, 📥 Скачиваний: 66.3К
https://pub.dev/packages/syncfusion_flutter_calendar

syncfusion_flutter_charts 30.1.41 - библиотека визуализации данных для создания красивых и высокопроизводительных графиков в приложениях Flutter.
В новой версии исправлена ошибка, вызванная мутациями элементов графика в фазе макета, для обеспечения совместимости с Flutter SDK 3.32.6.
👍 Лайки: 3520, 📥 Скачиваний: 270К
https://pub.dev/packages/syncfusion_flutter_charts

syncfusion_flutter_core 30.1.41 - пакет необходим для работы с различными виджетами Syncfusion Flutter, такими как календари, диаграммы и таблицы.
В новой версии произошли изменения: свойство assistThemeData в SfThemeData было переименовано в aiAssistViewThemeData.
👍 Лайки: 241, 📥 Скачиваний: 673К
https://pub.dev/packages/syncfusion_flutter_core

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #syncfusion_flutter_datepicker #syncfusion_flutter_calendar #syncfusion_flutter_charts #syncfusion_flutter_core #talker_logger #Talker
Привет, коллеги! 👋 Представьте: вы приходите на проект, а там — монстр на 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
Обзор пакетов на тему "Постоянная 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 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
👍3
Самые лучшие обновлённые пакеты за последние 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
🚀 Не используй 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
Правило 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
👍4
🚀 Упрощаем свою жизнь! 🚀
Узнайте, как подключить Dart MCP Server к VS Code и расширить возможности вашего AI-агента! 🤖
С помощью Dart MCP Server ваш AI-агент сможет получать полный контекст вашего приложения, включая runtime-контекст, анализ кода и управление зависимостями и тестами 📊.
Это значит, что агент сможет целенаправленно исправлять ошибки и вносить изменения в код, без необходимости делать предположения на основе ограниченных данных 🤩.
Хотите быть в курсе последних новостей и разработок в мире Flutter, Dart и FlutterPulse? 🤔
Тогда стоит подписаться на канал FlutterPulse, чтобы не пропустить ничего важного! 📣
#Flutter #Dart #FlutterPulse 🚀💻🔥