Private Named Parameters уже доступны в экспериментальном режиме Dart 🍿!
Эта фича решает проблему с приватными именами полей, позволяя инициализировать их через именованные аргументы конструктора класса.
Ранее это было невозможно, так как Dart запрещал использовать имена параметров, начинающиеся с _ (нижнего подчеркивания) в публичных конструкторах c именованными аргументами. Но теперь все меняется! 😄
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #madteacher_channel
Эта фича решает проблему с приватными именами полей, позволяя инициализировать их через именованные аргументы конструктора класса.
Ранее это было невозможно, так как Dart запрещал использовать имена параметров, начинающиеся с _ (нижнего подчеркивания) в публичных конструкторах c именованными аргументами. Но теперь все меняется! 😄
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #madteacher_channel
Обзор пакетов на тему Pagination & Lazy Loading
Firebase Pagination 4.2.0
Firebase Pagination упрощает пагинацию данных из Firebase Realtime Database и Firestore. Он позволяет эффективно и производительно получать обновления в реальном времени.
👍 Лайки: 91, 📥 Скачиваний: 1.9K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/firebase_pagination
Infinite Scroll Pagination 5.1.1
Infinite Scroll Pagination помогает реализовать бесконечную прокрутку в ваших Flutter-приложениях. Он универсален, настраиваем и легко интегрируется с любым подходом к управлению состоянием.
👍 Лайки: 3940, 📥 Скачиваний: 418K
📅 Обновлено: 3 месяца назад
https://pub.dev/packages/infinite_scroll_pagination
number_paginator 1.1.1
number_paginator позволяет легко реализовать навигацию по страницам с помощью номеров страниц в вашем Flutter-приложении. Он предлагает больше вариантов настройки и управление извне.
👍 Лайки: 107, 📥 Скачиваний: 8.2K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/number_paginator
very_good_infinite_list 0.9.0
very_good_infinite_list от Very Good Ventures позволяет легко отображать постраничную загрузку данных. Он имеет простой API, похожий на ListView.builder, и легко настраивается.
👍 Лайки: 302, 📥 Скачиваний: 17.1K
📅 Обновлено: 13 месяцев назад
https://pub.dev/packages/very_good_infinite_list
LazyIndexedStack 0.1.0
LazyIndexedStack позволяет загружать дочерние элементы лениво, только когда они нужны. Это особенно полезно, если у вас много дочерних элементов или у вас есть дочерний элемент, который загружает контент асинхронно.
👍 Лайки: 76, 📥 Скачиваний: 5.8K
📅 Обновлено: 5 месяцев назад
https://pub.dev/packages/flutter_lazy_indexed_stack
LazyLoadIndexedStack 1.2.1
LazyLoadIndexedStack позволяет лениво загружать виджеты, уменьшая время первоначальной загрузки. Он предлагает ленивую загрузку, предзагрузку и автоматическую утилизацию.
👍 Лайки: 98, 📥 Скачиваний: 15.5K
📅 Обновлено: 10 месяцев назад
https://pub.dev/packages/lazy_load_indexed_stack
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages firebase_pagination infinite_scroll_pagination number_paginator very_good_infinite_list flutter_lazy_indexed_stack lazy_load_indexed_stack
Firebase Pagination 4.2.0
Firebase Pagination упрощает пагинацию данных из Firebase Realtime Database и Firestore. Он позволяет эффективно и производительно получать обновления в реальном времени.
👍 Лайки: 91, 📥 Скачиваний: 1.9K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/firebase_pagination
Infinite Scroll Pagination 5.1.1
Infinite Scroll Pagination помогает реализовать бесконечную прокрутку в ваших Flutter-приложениях. Он универсален, настраиваем и легко интегрируется с любым подходом к управлению состоянием.
👍 Лайки: 3940, 📥 Скачиваний: 418K
📅 Обновлено: 3 месяца назад
https://pub.dev/packages/infinite_scroll_pagination
number_paginator 1.1.1
number_paginator позволяет легко реализовать навигацию по страницам с помощью номеров страниц в вашем Flutter-приложении. Он предлагает больше вариантов настройки и управление извне.
👍 Лайки: 107, 📥 Скачиваний: 8.2K
📅 Обновлено: 4 месяца назад
https://pub.dev/packages/number_paginator
very_good_infinite_list 0.9.0
very_good_infinite_list от Very Good Ventures позволяет легко отображать постраничную загрузку данных. Он имеет простой API, похожий на ListView.builder, и легко настраивается.
👍 Лайки: 302, 📥 Скачиваний: 17.1K
📅 Обновлено: 13 месяцев назад
https://pub.dev/packages/very_good_infinite_list
LazyIndexedStack 0.1.0
LazyIndexedStack позволяет загружать дочерние элементы лениво, только когда они нужны. Это особенно полезно, если у вас много дочерних элементов или у вас есть дочерний элемент, который загружает контент асинхронно.
👍 Лайки: 76, 📥 Скачиваний: 5.8K
📅 Обновлено: 5 месяцев назад
https://pub.dev/packages/flutter_lazy_indexed_stack
LazyLoadIndexedStack 1.2.1
LazyLoadIndexedStack позволяет лениво загружать виджеты, уменьшая время первоначальной загрузки. Он предлагает ленивую загрузку, предзагрузку и автоматическую утилизацию.
👍 Лайки: 98, 📥 Скачиваний: 15.5K
📅 Обновлено: 10 месяцев назад
https://pub.dev/packages/lazy_load_indexed_stack
#flutter #dart #pubdev #flutterpulse #FlutterPulseThemedPackages firebase_pagination infinite_scroll_pagination number_paginator very_good_infinite_list flutter_lazy_indexed_stack lazy_load_indexed_stack
Принцип подстановки Барбары Лисков: основа правильного полиморфизма в программировании 🌟
Привет, друзья! Сегодня мы поговорим о третьей букве в акрониме SOLID - L, которая означает принцип подстановки Лисков 🤔. Этот принцип гласит, что объекты подклассов должны быть взаимозаменяемы с объектами их базового класса без нарушения корректности работы программы 💻.
Почему это важно? 🤔 Нарушение LSP приводит к непредсказуемому поведению программы, код начинает проверять типы объектов с помощью if/else или is, что противоречит принципу открытости/закрытости и делает систему хрупкой 🌪. Соблюдение LSP гарантирует, что полиморфизм работает правильно и подклассы действительно являются специализацией базового класса 🔩.
Давайте рассмотрим пример нарушения LSP 🚫:
Здесь функция, принимающая Bird, ожидает, что любой потомок сможет летать. Но при подстановке пингвина код валится с ошибкой, значит, иерархия нарушает принцип Лисков 🚫.
А теперь пример правильного использования LSP 🌟:
Ключевые правила LSP 📝:
✔️ Предусловия не могут быть усилены в подклассе — подкласс не должен требовать больше, чем базовый класс
✔️ Постусловия не могут быть ослаблены в подклассе — подкласс должен гарантировать как минимум то, что гарантирует базовый класс
✔️ Инварианты должны сохраняться — свойства, которые истинны для базового класса, должны оставаться истинными для подклассов
✔️ Исключения — подкласс не должен выбрасывать новые типы исключений, которые не ожидаются от базового класса
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #flutterfriendly
Привет, друзья! Сегодня мы поговорим о третьей букве в акрониме SOLID - L, которая означает принцип подстановки Лисков 🤔. Этот принцип гласит, что объекты подклассов должны быть взаимозаменяемы с объектами их базового класса без нарушения корректности работы программы 💻.
Почему это важно? 🤔 Нарушение LSP приводит к непредсказуемому поведению программы, код начинает проверять типы объектов с помощью if/else или is, что противоречит принципу открытости/закрытости и делает систему хрупкой 🌪. Соблюдение LSP гарантирует, что полиморфизм работает правильно и подклассы действительно являются специализацией базового класса 🔩.
Давайте рассмотрим пример нарушения LSP 🚫:
class Bird {
void fly() {
print("Flying");
}
}
class Penguin extends Bird {
@override
void fly() {
throw Exception("Cannot fly"); // Нарушение LSP
}
}
Здесь функция, принимающая Bird, ожидает, что любой потомок сможет летать. Но при подстановке пингвина код валится с ошибкой, значит, иерархия нарушает принцип Лисков 🚫.
А теперь пример правильного использования LSP 🌟:
abstract class Bird {
void move();
}
class Sparrow extends Bird {
@override
void move() {
print("Flying");
}
}
class Penguin extends Bird {
@override
void move() {
print("Swimming");
}
}
Ключевые правила LSP 📝:
✔️ Предусловия не могут быть усилены в подклассе — подкласс не должен требовать больше, чем базовый класс
✔️ Постусловия не могут быть ослаблены в подклассе — подкласс должен гарантировать как минимум то, что гарантирует базовый класс
✔️ Инварианты должны сохраняться — свойства, которые истинны для базового класса, должны оставаться истинными для подклассов
✔️ Исключения — подкласс не должен выбрасывать новые типы исключений, которые не ожидаются от базового класса
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #flutterfriendly
🔥2
Flutter-разработчикам: как использовать Dart на сервере
Вы уже умеете создавать красивые и производительные интерфейсы на Flutter, но что делать, когда нужно обработать данные на сервере или реализовать логику, не связанную с клиентом? Теперь вы можете использовать Dart не только на клиенте, но и на сервере!
В этой статье вы узнаете, как использовать Dart на сервере, почему это выгодно и как начать работать с серверным Dart уже сегодня. Вы познакомитесь с фреймворком Shelf, узнаете, как обрабатывать запросы, работать с базами данных и реализовывать API. Кроме того, вы узнаете о преимуществах использования единого языка на клиенте и сервере, а также о том, как делиться моделями между клиентом и сервером для повышения безопасности и поддерживаемости кода.
🇷🇺 Читать статью на русском
🇬🇧 Read the article in English
🌐 Читать оригинал
Все подобные новости ищите по хэштегу #FlutterPulseMedium ✨ Оцените рубрику: полезна ли она для вас?
FlutterPulse — канал о мире Flutter!
#flutter #dart #server #backend #fullstack #FlutterPulse #FlutterPulseMedium
Вы уже умеете создавать красивые и производительные интерфейсы на Flutter, но что делать, когда нужно обработать данные на сервере или реализовать логику, не связанную с клиентом? Теперь вы можете использовать Dart не только на клиенте, но и на сервере!
В этой статье вы узнаете, как использовать Dart на сервере, почему это выгодно и как начать работать с серверным Dart уже сегодня. Вы познакомитесь с фреймворком Shelf, узнаете, как обрабатывать запросы, работать с базами данных и реализовывать API. Кроме того, вы узнаете о преимуществах использования единого языка на клиенте и сервере, а также о том, как делиться моделями между клиентом и сервером для повышения безопасности и поддерживаемости кода.
🇷🇺 Читать статью на русском
🇬🇧 Read the article in English
🌐 Читать оригинал
Все подобные новости ищите по хэштегу #FlutterPulseMedium ✨ Оцените рубрику: полезна ли она для вас?
FlutterPulse — канал о мире Flutter!
#flutter #dart #server #backend #fullstack #FlutterPulse #FlutterPulseMedium
🔥2
Самые лучшие обновлённые пакеты за последние 24 часа
webview_flutter_android 4.10.10 - плагин для интеграции веб-представлений в Android-приложения, созданные с помощью Flutter. Обновлена версия Kotlin до 2.2.21.
👍 Лайки: 49, 📥 Скачиваний: 2.8М
https://pub.dev/packages/webview_flutter_android
video_player_android 2.8.22 - плагин для проигрывания видео в Android-приложениях. Обновлена версия kotlin до 2.2.21.
👍 Лайки: 30, 📥 Скачиваний: 3.7М
https://pub.dev/packages/video_player_android
shadcn_ui 0.40.1 - пакет содержит множество настраиваемых UI-компонентов для Flutter. Исправлена проблема с применением ограничений в ShadInput и запущен форматтер Dart.
👍 Лайки: 807, 📥 Скачиваний: 26.5К
https://pub.dev/packages/shadcn_ui
app_settings 7.0.0 - плагин для открытия настроек телефона из приложения на платформах iOS и Android. Исправлены ошибки, обновлены версии Gradle и Kotlin, добавлена поддержка открытия экрана уведомлений на iOS 15.4-16.0.
👍 Лайки: 1210, 📥 Скачиваний: 780К
https://pub.dev/packages/app_settings
google_fonts 6.3.3 - плагин для использования шрифтов с fonts.google.com в приложениях Flutter. Исправлена ошибка с использованием устаревшего FontWeight.index и обновлена минимальная поддерживаемая версия SDK до Flutter 3.35/Dart 3.9.
👍 Лайки: 6340, 📥 Скачиваний: 2.4М
https://pub.dev/packages/google_fonts
shared_preferences_android 2.4.18 - плагин для хранения данных в приложениях Android с помощью SharedPreferences. Обновлена версия kotlin до 2.2.21.
👍 Лайки: 17, 📥 Скачиваний: 4.43М
https://pub.dev/packages/shared_preferences_android
FlutterPulse — канал о мире Flutter!
Поддержать канал
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #webview_flutter_android #video_player_android #shadcn_ui #app_settings #google_fonts #shared_preferences_android
webview_flutter_android 4.10.10 - плагин для интеграции веб-представлений в Android-приложения, созданные с помощью Flutter. Обновлена версия Kotlin до 2.2.21.
👍 Лайки: 49, 📥 Скачиваний: 2.8М
https://pub.dev/packages/webview_flutter_android
video_player_android 2.8.22 - плагин для проигрывания видео в Android-приложениях. Обновлена версия kotlin до 2.2.21.
👍 Лайки: 30, 📥 Скачиваний: 3.7М
https://pub.dev/packages/video_player_android
shadcn_ui 0.40.1 - пакет содержит множество настраиваемых UI-компонентов для Flutter. Исправлена проблема с применением ограничений в ShadInput и запущен форматтер Dart.
👍 Лайки: 807, 📥 Скачиваний: 26.5К
https://pub.dev/packages/shadcn_ui
app_settings 7.0.0 - плагин для открытия настроек телефона из приложения на платформах iOS и Android. Исправлены ошибки, обновлены версии Gradle и Kotlin, добавлена поддержка открытия экрана уведомлений на iOS 15.4-16.0.
👍 Лайки: 1210, 📥 Скачиваний: 780К
https://pub.dev/packages/app_settings
google_fonts 6.3.3 - плагин для использования шрифтов с fonts.google.com в приложениях Flutter. Исправлена ошибка с использованием устаревшего FontWeight.index и обновлена минимальная поддерживаемая версия SDK до Flutter 3.35/Dart 3.9.
👍 Лайки: 6340, 📥 Скачиваний: 2.4М
https://pub.dev/packages/google_fonts
shared_preferences_android 2.4.18 - плагин для хранения данных в приложениях Android с помощью SharedPreferences. Обновлена версия kotlin до 2.2.21.
👍 Лайки: 17, 📥 Скачиваний: 4.43М
https://pub.dev/packages/shared_preferences_android
FlutterPulse — канал о мире Flutter!
Поддержать канал
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #webview_flutter_android #video_player_android #shadcn_ui #app_settings #google_fonts #shared_preferences_android
👍1
Обновил Flutter… и сломалось пол-проекта 😐. Кто из вас сталкивался с проблемами после обновления версии Flutter? 🧑💻 Я решился обновить версию с 3.27 до 3.35 и, как всегда, это привело к целой серии проблем 🥲. Нужно обновить половину библиотек из pubspec.yaml, а некоторые из них уже не поддерживаются или не обновляются уже несколько лет 😭.
Причина проблем часто кроется в том, что опенсорсеры dart и Flutter библиотек забивают болт на свои проекты 🍆. Например, хранилище hive/isar, которым пользовалось большинство проектов, не обновляется уже третий год 🩷. Решение может заключаться в том, чтобы не использовать всякую срань в своем pubspec, но что делать, когда это специфичный функционал, на разработку которого уйдет много времени? 📱
Мы столкнулись с проблемой, когда библиотека social_share, которая создает историю в инсте по наждатию на одну кнопку, потеряла актуальность и нам приходится искать замену или самим форкать и дописывать библиотеку 📌. Чтобы избежать таких проблем, можно следовать нескольким пунктам:
✅ меньше пакетов → больше контроля
✅ критические плагины → форк + минимум нативного кода
✅ следить за репами заранее
✅ избегать магических «универсальных» решений
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #frezycode
Причина проблем часто кроется в том, что опенсорсеры dart и Flutter библиотек забивают болт на свои проекты 🍆. Например, хранилище hive/isar, которым пользовалось большинство проектов, не обновляется уже третий год 🩷. Решение может заключаться в том, чтобы не использовать всякую срань в своем pubspec, но что делать, когда это специфичный функционал, на разработку которого уйдет много времени? 📱
Мы столкнулись с проблемой, когда библиотека social_share, которая создает историю в инсте по наждатию на одну кнопку, потеряла актуальность и нам приходится искать замену или самим форкать и дописывать библиотеку 📌. Чтобы избежать таких проблем, можно следовать нескольким пунктам:
✅ меньше пакетов → больше контроля
✅ критические плагины → форк + минимум нативного кода
✅ следить за репами заранее
✅ избегать магических «универсальных» решений
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #frezycode
😁2
Да кто такой этот ваш 2D-скролл? Федор Благодырь о реализации двунаправленного скролла во Flutter
Представьте себе таблицу или таймлайн, который можно скроллить не только вверх и вниз, но и влево и вправо. Это удобно, но реализовать такой функционал во Flutter было непросто. Раньше разработчикам приходилось использовать "костыли" или вовсе отказываться от такой функциональности.
Но теперь, благодаря усилиям команды Flutter, появился официальный способ реализации двунаправленного скролла. О нем и рассказал Федор Благодырь, тимлид команды видеоредактора Япи, на конференции Mobius.
Проблемы реализации двунаправленного скролла
👉 Динамический размер фрагментов: пользователь может менять масштаб таблицы или подрезать фрагменты аудио/видео.
👉 Списки внутри ячеек: необходимо эффективно отрисовывать списки внутри ячеек таблицы.
👉 Взаимодействие с фрагментами: пользователь может влиять на положение и пропорции фрагментов.
👉 Z-индекс (приоритет отрисовки): необходимо контролировать порядок отрисовки элементов.
👉 Анимации: необходимо контролировать анимации при изменении размеров ячеек.
Решение
Федор показал, как реализовать двунаправленный скролл с помощью кастомного рендер-объекта. Он продемонстрировал пример реализации на основе приложения с расписанием Mobius.
👉 Создание модели данных для таблицы.
👉 Описание лейаута таблицы на основе модели данных.
👉 Реализация кастомного рендер-объекта для двунаправленного скролла.
📊 Результаты
👉 Производительность увеличилась в 10 раз по сравнению с предыдущей реализацией.
👉 FPS стал стабильным на уровне 60 кадров в секунду.
Плюсы и минусы
👍 Плюсы: двунаправленный скролл, готовые реализации от команды Flutter, сумасшедший прирост производительности.
👍 Минусы: сложно, нет готового механизма по типу сливеров, мало возможности влиять на "внутрянку".
Посмотрите видео целиком на YouTube или в VkVideo
👍 Посмотрите другие видео по #FlutterPulseYoutube и узнайте больше о мире Flutter!
FlutterPulse — канал о мире Flutter!
#Flutter #Dart #FlutterPulse #FlutterPulseTips #FlutterPulseYoutube
Представьте себе таблицу или таймлайн, который можно скроллить не только вверх и вниз, но и влево и вправо. Это удобно, но реализовать такой функционал во Flutter было непросто. Раньше разработчикам приходилось использовать "костыли" или вовсе отказываться от такой функциональности.
Но теперь, благодаря усилиям команды Flutter, появился официальный способ реализации двунаправленного скролла. О нем и рассказал Федор Благодырь, тимлид команды видеоредактора Япи, на конференции Mobius.
Проблемы реализации двунаправленного скролла
👉 Динамический размер фрагментов: пользователь может менять масштаб таблицы или подрезать фрагменты аудио/видео.
👉 Списки внутри ячеек: необходимо эффективно отрисовывать списки внутри ячеек таблицы.
👉 Взаимодействие с фрагментами: пользователь может влиять на положение и пропорции фрагментов.
👉 Z-индекс (приоритет отрисовки): необходимо контролировать порядок отрисовки элементов.
👉 Анимации: необходимо контролировать анимации при изменении размеров ячеек.
Решение
Федор показал, как реализовать двунаправленный скролл с помощью кастомного рендер-объекта. Он продемонстрировал пример реализации на основе приложения с расписанием Mobius.
👉 Создание модели данных для таблицы.
👉 Описание лейаута таблицы на основе модели данных.
👉 Реализация кастомного рендер-объекта для двунаправленного скролла.
📊 Результаты
👉 Производительность увеличилась в 10 раз по сравнению с предыдущей реализацией.
👉 FPS стал стабильным на уровне 60 кадров в секунду.
Плюсы и минусы
👍 Плюсы: двунаправленный скролл, готовые реализации от команды Flutter, сумасшедший прирост производительности.
👍 Минусы: сложно, нет готового механизма по типу сливеров, мало возможности влиять на "внутрянку".
Посмотрите видео целиком на YouTube или в VkVideo
👍 Посмотрите другие видео по #FlutterPulseYoutube и узнайте больше о мире Flutter!
FlutterPulse — канал о мире Flutter!
#Flutter #Dart #FlutterPulse #FlutterPulseTips #FlutterPulseYoutube
👍1
Реализация свайп-действий в Flutter с помощью Slidable
🚀 Улучшите свой Flutter-приложение, добавив интуитивные свайп-жесты! 👋
В этой статье вы узнаете, как использовать пакет Flutter Slidable, чтобы добавить свайп-действия в ваш список. Автор делится пошаговой инструкцией по реализации свайп-действий, начиная от добавления зависимости до создания пользовательского интерфейса и обработки свайп-жестов. 📱💻
Вы узнаете, как создать список с элементами, которые можно свайпать влево и вправо, открывая скрытые действия, такие как "Аналитика", "Редактировать" и "Удалить". 📊🖋
В статье подробно описаны следующие шаги:
- Добавление зависимости flutter_slidable в pubspec.yaml
- Создание базового UI с ListView и элементами Slidable
- Обработка свайп-действий с помощью startActionPane и endActionPane
- Определение callback-функций для действий
Читайте полную статью по ссылкам ниже:
🇷🇺Как реализовать свайп-действия в Flutter с помощью Slidable
🇬🇧How to Implement Swipe Actions in Flutter with Slidable
🌐Оригинальная статья на Stackademic
Все подобные новости ищите по хэштегу #FlutterPulseMedium ✨
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #FlutterPulseMedium #mobiledevelopment #appdevelopment #uiux
🚀 Улучшите свой Flutter-приложение, добавив интуитивные свайп-жесты! 👋
В этой статье вы узнаете, как использовать пакет Flutter Slidable, чтобы добавить свайп-действия в ваш список. Автор делится пошаговой инструкцией по реализации свайп-действий, начиная от добавления зависимости до создания пользовательского интерфейса и обработки свайп-жестов. 📱💻
Вы узнаете, как создать список с элементами, которые можно свайпать влево и вправо, открывая скрытые действия, такие как "Аналитика", "Редактировать" и "Удалить". 📊🖋
В статье подробно описаны следующие шаги:
- Добавление зависимости flutter_slidable в pubspec.yaml
- Создание базового UI с ListView и элементами Slidable
- Обработка свайп-действий с помощью startActionPane и endActionPane
- Определение callback-функций для действий
Читайте полную статью по ссылкам ниже:
🇷🇺Как реализовать свайп-действия в Flutter с помощью Slidable
🇬🇧How to Implement Swipe Actions in Flutter with Slidable
🌐Оригинальная статья на Stackademic
Все подобные новости ищите по хэштегу #FlutterPulseMedium ✨
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #FlutterPulseMedium #mobiledevelopment #appdevelopment #uiux
Революция во векторизации данных: представляем пакет ollama_embedder! 🚀
На выходных один из разработчиков столкнулся с проблемой подготовки данных для векторизации и поиска в векторной базе данных Qdrant. После тщательного поиска решений в интернете, он решил создать свой собственный пакет на Dart - ollama_embedder! 🎉
Этот CLI-инструмент позволяет создавать векторные представления текста с помощью локального Ollama-сервера. Вот что он умеет:
🔹 Генерирует эмбеддинги для файлов и целых директорий (рекурсивно).
🔹 Работает с локальным Ollama — проверяет установку, доступность сервера и наличие модели.
🔹 Два режима предобработки: technical и textual.
🔹 Умная очистка — удаляет HTML-шум, cookie-баннеры, навигацию, футеры, эмодзи.
🔹 Умное разбиение на чанки с автоматическим определением оптимального размера и созданием перекрытий между чанками.
🔹 Надежные запросы — автоматические повторы при ошибках Ollama.
🔹 Гибкая настройка — URL сервера, модель, таймауты, размер файлов, пути ввода/вывода.
🔹 Структурированный итоговый JSON — готов для векторных БД и RAG-систем.
🔹 Покрытие тестами — 78% покрытия кода.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #mobile_developing
На выходных один из разработчиков столкнулся с проблемой подготовки данных для векторизации и поиска в векторной базе данных Qdrant. После тщательного поиска решений в интернете, он решил создать свой собственный пакет на Dart - ollama_embedder! 🎉
Этот CLI-инструмент позволяет создавать векторные представления текста с помощью локального Ollama-сервера. Вот что он умеет:
🔹 Генерирует эмбеддинги для файлов и целых директорий (рекурсивно).
🔹 Работает с локальным Ollama — проверяет установку, доступность сервера и наличие модели.
🔹 Два режима предобработки: technical и textual.
🔹 Умная очистка — удаляет HTML-шум, cookie-баннеры, навигацию, футеры, эмодзи.
🔹 Умное разбиение на чанки с автоматическим определением оптимального размера и созданием перекрытий между чанками.
🔹 Надежные запросы — автоматические повторы при ошибках Ollama.
🔹 Гибкая настройка — URL сервера, модель, таймауты, размер файлов, пути ввода/вывода.
🔹 Структурированный итоговый JSON — готов для векторных БД и RAG-систем.
🔹 Покрытие тестами — 78% покрытия кода.
Полную новость читайте здесь.
FlutterPulse — канал о мире Flutter!
#flutter #dart #FlutterPulse #FlutterPulseNews #mobile_developing
1❤2🤝1
🎉 Вышел Ноябрьский Flutter-дайджест! 🚀
Привет, друзья!
Ноябрь получился насыщенным — новый Flutter 3.38 уже тут, а вместе с ним куча улучшений по вебу, UI, платформам и продуктивности. Но главное — у нас вышла огромная подборка материалов, переводов, пакетов и гайдов 🔥
И да… наш канал перестал быть анонимным, а в ноябре у меня был день рождения и я немного рассказал о себе 🎂🎉
Спасибо, что вы здесь — продолжаем расти вместе 💙
---
✍️ Новые переводы с Medium
🔹 Жизненный цикл Flutter-приложений. Часть 1 и часть 2
🔹 Перехватчик повторных попыток в Dio
🔹 Как работает Hot Reload / Restart
🔹 Звуки и стили уведомлений
🔹 Доступность клавиатуры
🔹 Жизненный цикл + фоновые задачи
🔹 Как работает GC в Dart
📰 Статьи с Хабра
✅ Интернет-радио. Продолжение
✅ Аудиогид с ИИ без опыта мобильной разработки
✅ Два года с Duit
✅ Flutter везде (и даже в чайнике)
✅ RTSP во Flutter
---
📦 Новые пакеты
• pubghost — поиск «призраков» в проекте
• json_annotation_tools — дебаг JSON
• ms_single_multi_select — меню с множественным выбором
• smart_appbar — умный AppBar
• isar_community — быстрая NoSQL-база
• genui — генеративный UI на ИИ
• gesture_recorder — запись и воспроизведение жестов
---
🔄 Лучшие обновления пакетов месяца
• firebase_messaging 15.2.1
• GetX 4.7.3
• flutter_svg 2.2.3
• auto_route 10.2.3
---
📚 Тематические подборки пакетов
• Country Picker
• Parsing & Text Utils
• Lists
• Deep Linking
• Payment API
• Design System
• Markdown
• Feature Discovery / Coach Marks
---
🎥 Видео-разборы
• Aurora UI Kit
• Flutter Flight Plans 2025
• Многомодульность
• Графический слой микрокernel-ОС
• MCP-сервера + Dart
• Линтеры на Dart
• Плагинная архитектура в Dart
---
💡 Гайды и лайфхаки
• Лайфхаки с колонками
• VSCode настройки
• Render Objects
• Масштабирование изображений
• Разрешения
• Null-aware элементы
• Ready-state у представления
А также новости из других каналов:
аннотации, viewport, модификаторы переменных — всё по ссылкам в нашем посте.
---
💙 И главное
Дальше — ещё больше!
Канал растёт.
И спасибо каждому, кто читает FlutterPulse 🙌
Поддержите нас!
#flutter #dart #flutterpulse #pubdev #новости #дайджест #MobileDev #AppDev 🚀
Привет, друзья!
Ноябрь получился насыщенным — новый Flutter 3.38 уже тут, а вместе с ним куча улучшений по вебу, UI, платформам и продуктивности. Но главное — у нас вышла огромная подборка материалов, переводов, пакетов и гайдов 🔥
И да… наш канал перестал быть анонимным, а в ноябре у меня был день рождения и я немного рассказал о себе 🎂🎉
Спасибо, что вы здесь — продолжаем расти вместе 💙
---
✍️ Новые переводы с Medium
🔹 Жизненный цикл Flutter-приложений. Часть 1 и часть 2
🔹 Перехватчик повторных попыток в Dio
🔹 Как работает Hot Reload / Restart
🔹 Звуки и стили уведомлений
🔹 Доступность клавиатуры
🔹 Жизненный цикл + фоновые задачи
🔹 Как работает GC в Dart
📰 Статьи с Хабра
✅ Интернет-радио. Продолжение
✅ Аудиогид с ИИ без опыта мобильной разработки
✅ Два года с Duit
✅ Flutter везде (и даже в чайнике)
✅ RTSP во Flutter
---
📦 Новые пакеты
• pubghost — поиск «призраков» в проекте
• json_annotation_tools — дебаг JSON
• ms_single_multi_select — меню с множественным выбором
• smart_appbar — умный AppBar
• isar_community — быстрая NoSQL-база
• genui — генеративный UI на ИИ
• gesture_recorder — запись и воспроизведение жестов
---
🔄 Лучшие обновления пакетов месяца
• firebase_messaging 15.2.1
• GetX 4.7.3
• flutter_svg 2.2.3
• auto_route 10.2.3
---
📚 Тематические подборки пакетов
• Country Picker
• Parsing & Text Utils
• Lists
• Deep Linking
• Payment API
• Design System
• Markdown
• Feature Discovery / Coach Marks
---
🎥 Видео-разборы
• Aurora UI Kit
• Flutter Flight Plans 2025
• Многомодульность
• Графический слой микрокernel-ОС
• MCP-сервера + Dart
• Линтеры на Dart
• Плагинная архитектура в Dart
---
💡 Гайды и лайфхаки
• Лайфхаки с колонками
• VSCode настройки
• Render Objects
• Масштабирование изображений
• Разрешения
• Null-aware элементы
• Ready-state у представления
А также новости из других каналов:
аннотации, viewport, модификаторы переменных — всё по ссылкам в нашем посте.
---
💙 И главное
Дальше — ещё больше!
Канал растёт.
И спасибо каждому, кто читает FlutterPulse 🙌
Поддержите нас!
#flutter #dart #flutterpulse #pubdev #новости #дайджест #MobileDev #AppDev 🚀
💘2👍1🔥1👌1
Создаём красивые контекстные меню в Flutter с пакетом star_menu!
Хотите добавить в своё Flutter-приложение стильные и функциональные контекстные меню? В статье ниже вы найдёте подробное руководство по использованию пакета star_menu!
В этой статье вы узнаете, как создавать контекстные меню различных форм (линейные, круговые, сеточные) и настраивать их анимацию. Вы научитесь обрабатывать нажатия на элементы меню, создавать подменю и использовать продвинутые функции, такие как ленивая загрузка элементов и эффекты фона. Авторы подробно объясняют, как использовать пакет star_menu, чтобы ваши меню выглядели современно и привлекательно.
🇷🇺 Читать статью на русском
🇬🇧 Read the article in English
🌐 Читать оригинал
Все подобные новости ищите по хэштегу #FlutterPulseMedium
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #FlutterPulseMedium #mobiledev #appdev #contextmenu #starmmenu
Хотите добавить в своё Flutter-приложение стильные и функциональные контекстные меню? В статье ниже вы найдёте подробное руководство по использованию пакета star_menu!
В этой статье вы узнаете, как создавать контекстные меню различных форм (линейные, круговые, сеточные) и настраивать их анимацию. Вы научитесь обрабатывать нажатия на элементы меню, создавать подменю и использовать продвинутые функции, такие как ленивая загрузка элементов и эффекты фона. Авторы подробно объясняют, как использовать пакет star_menu, чтобы ваши меню выглядели современно и привлекательно.
🇷🇺 Читать статью на русском
🇬🇧 Read the article in English
🌐 Читать оригинал
Все подобные новости ищите по хэштегу #FlutterPulseMedium
FlutterPulse — канал о мире Flutter!
#flutter #dart #flutterpulse #FlutterPulseMedium #mobiledev #appdev #contextmenu #starmmenu