Flutter Pulse
425 subscribers
280 photos
567 links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
🔧 DevScreen на Flutter: свой путь к инструменту для логирования, тестирования и смены окружений

🗣 Спикер: Павел, Flutter-разработчик с 10+ годами опыта, один из первых пользователей Flutter в РФ, соавтор книги «Основы Flutter», лектор СФУ и активный участник комьюнити.

На конференции он представил разработку своей команды — DevScreen, универсальный внутренний инструмент для мобильной отладки, логирования, диагностики и смены окружений.
🔎 Зачем нужен DevScreen?

В боевой разработке часто не хватает:

🎛 экрана с настройками (окружения, прокси)

🧾 доступа к логам прямо в приложении

🐞 удобного сбора стектрейсов для QA

📉 отладки UI, FPS, границ, состояния виджетов

🧪 триггера запуска debug-инструментов без пересборки

💬 «Качество — это ответственность всей команды», — говорит Павел. А значит, и тестировщики, и дизайнеры, и разработчики должны иметь доступ к полезной внутренней информации прямо в приложении.
🧰 Что уже есть на рынке?

Рассмотрели 2 популярных решения:
1. Ume

умеет логировать запросы
показывает FPS, границы виджетов, device info
не умеет работать с окружениями и прокси
нет нормального логирования ошибок
триггер ручной (нужно писать самому)

💡 Хорош для дизайнеров и UI-отладки, но слабо помогает QA и не масштабируется под все нужды.

2. Talker

готовый экран логов
отличное логирование (включая ошибки, кастомные события, API-запросы)
удобен и в приложении, и в консоли
не умеет менять окружение и прокси
триггер — тоже руками
нет UI-отладки

💬 «Talker — это скорее логер, чем полноценный DevScreen. Мы хотели большего».


Так родилась идея своего DevScreen MVP, который:
🔓 открывается по shake-жесту или скрытой зоне (не мешает пользователю)
🌐 позволяет менять окружения, добавлять прокси
🧾 логирует ошибки, API-запросы, аналитику и кастомные события
🔄 сбрасывает кэш, симулирует логаут, показывает device info
🛠 кастомизируется под проект, легко расширяется
🔐 имеет авторизацию (доступ по роли или логину)
🧪 отделён от боевого UI, не ломает UX обычного пользователя
⚙️ поддерживает показ границ виджетов, FPS, и другую системную инфу

💡 Всё настраивается модульно. Хочешь только прокси? Подключай только его. Нужны только логи? Без проблем.

🤝 Кто пользуется внутри?
Разработчики — смотрят логи, стектрейсы, ошибки
Тестировщики — не пишут баг на глаз, а прикладывают API-ответ и stacktrace
Дизайнеры — проверяют реализацию UI прямо в приложении (границы, цвета, размеры)

🚀 Что дальше?

В планах:
🧩 сделать DevScreen переиспользуемым пакетом
🛡 вынести доступ к нему за фичефлаг
🧪 покрыть всё юнит- и интеграционными тестами
📢 возможно — опубликовать в open-source, если будет спрос

📺 Полное видео доклада (YouTube):
📌 Такой подход реально экономит часы работы QA и разработчиков, а главное — повышает качество продукта уже на уровне debug. Всё прозрачно, логируемо и воспроизводимо.

🧵 #flutter #flutterpulse #debug #talker #devtools #qa #мобилкарф #тестирование #логирование #devscreen #mobiledev #dart #flutterмного #конференция
Обзор пакетов на тему "Игры и Награды" 🎮👏

Flutter Fortune Wheel 🎡
Пакет для визуализации случайных процессов выбора. Он включает в себя колесо фортуны и панель фортуны, которые можно настроить и использовать на мобильных устройствах, настольных компьютерах и веб-сайтах.
👍 Лайки: 352, 📥 Скачиваний: 8.9К
Последнее обновление 📅: 8 месяцев назад
https://pub.dev/packages/flutter_fortune_wheel

Teqani Rewards 🎁
Пакет для создания игровой механики в ваших приложениях. Поддерживает несколько вариантов хранения данных, включая SharedPreferences, SQLite, Hive и Firebase.
👍 Лайки: 5, 📥 Скачиваний: 38
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/teqani_rewards

Roulette 🎲
Создайте кастомизируемые рулетки для ваших приложений с помощью этого простого и удобного виджета. Поддерживает различные типы рулеток, анимацию и настройку внешнего вида.
👍 Лайки: 44, 📥 Скачиваний: 502
Последнее обновление 📅: 8 месяцев назад
https://pub.dev/packages/roulette

Flutter Confetti 🎉
Добавьте праздничную атмосферу в ваши Flutter-приложения с помощью пакета Flutter Confetti!
👍 Лайки: 107, 📥 Скачиваний: 10.6К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/flutter_confetti

Confetti 🎊
Празднуем достижения пользователей с помощью пакета Confetti!
👍 Лайки: 1520, 📥 Скачиваний: 246К
Последнее обновление 📅: 8 месяцев назад
https://pub.dev/packages/confetti

Crossword 🤔
Создайте интерактивные кроссворды в вашем приложении с помощью этого пакета. Он предлагает настраиваемый виджет кроссворда, простой интерфейс для пользователей и возможность управления подсказками.
👍 Лайки: 33, 📥 Скачиваний: 260
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/crossword

#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #flutterfortunewheel #teqanirewards #roulette #flutterconfetti #confetti #crossword
Please open Telegram to view this post
VIEW IN TELEGRAM
Лучшие обновленные пакеты за последние 24 часа!

openai_dart 0.5.2
Неофициальный клиент для API OpenAI на языке Dart. Добавлены изменения для поддержки API OpenRouter и Google.
👍 Лайки: 104, 📥 Скачиваний: 12К
https://pub.dev/packages/openai_dart

build 2.5.3
Определяет основные компоненты процесса сборки и их взаимодействие. Используется `build_runner_core` 9.1.1.
👍 Лайки: 89, 📥 Скачиваний: 4.4М
https://pub.dev/packages/build

adaptive_dialog 2.4.2
Показывает диалоговые окна и модальные листы, адаптируясь к платформе. Добавлена возможность сделать MaterialTextInputDialog прокручиваемым.
👍 Лайки: 1050, 📥 Скачиваний: 24.9К
https://pub.dev/packages/adaptive_dialog

build_resolvers 2.5.3
Реализует в памяти Resolvers для использования с пакетом build. Обновлена зависимость до build_runner_core 9.1.1.
👍 Лайки: 12, 📥 Скачиваний: 4.1М
https://pub.dev/packages/build_resolvers

tabbed_view 1.21.0
Создает вкладки в стиле классических десктоп-приложений на Flutter. Теперь поддерживает передачу TabData в tabCloseInterceptor и добавляет dragScope.
👍 Лайки: 114, 📥 Скачиваний: 1.9К
https://pub.dev/packages/tabbed_view

build_runner 2.5.3
Автономный генератор и наблюдатель для Dart. Исправлены ошибки, связанные с крахом и очисткой сборки.
👍 Лайки: 2190, 📥 Скачиваний: 4.2М
https://pub.dev/packages/build_runner

#openai_dart #build #adaptive_dialog #build_resolvers #tabbed_view #build_runner #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Проверка статуса продления подписки пользователя

Привет, Flutter-разработчики! 👋 Сегодня мы рассмотрим полезный совет по проверке статуса продления подписки пользователя с помощью RevenueCat. 📈

Зачем проверять статус продления подписки?

Проверка статуса продления подписки позволяет вам:
Показывать промо-офферы перед тем, как потерять пользователя
Управлять доступом к premium-функциям вашего приложения

Пример кода на Dart:


Future<bool> hasRenewal() async {
final customerInfo = await Purchases.getCustomerInfo();
final entitlements = customerInfo.entitlements.active.values.firstOrNull;
return entitlements?.willRenew ?? false;
}


В этом коде мы:
1. Получаем информацию о покупателе с помощью `Purchases.getCustomerInfo()`
2. Извлекаем активные права доступа (`entitlements`)
3. Проверяем, будет ли подписка продлена (`willRenew`)

Используйте эту информацию, чтобы улучшить удержание пользователей! 📊

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

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

#flutter #dart #flutterpulse #FlutterPulseTips #MobileDev #SubscriptionManagement #RevenueCat #FlutterTips
Обзор пакетов на тему Диалоговые окна (Dialogs)

Awesome Dialog 📱
Создавайте простые и красивые диалоги в вашем приложении с помощью Awesome Dialog. Этот пакет позволяет настроить диалоговые окна с анимацией, кастомными кнопками и многим другим.
👍 Лайки: 1430, 📥 Скачиваний: 19.6К
Последнее обновление 📅: 13 месяцев назад
https://pub.dev/packages/awesome_dialog

flutter_platform_alert 📱
Пакет позволяет отображать нативные алерты на различных платформах, включая iOS, Android, Windows, macOS и Linux. Поддерживает различные стили алертов и иконки.
👍 Лайки: 129, 📥 Скачиваний: 6.98К
Последнее обновление 📅: 23 дня назад
https://pub.dev/packages/flutter_platform_alert

Material Dialogs 📱
Создавайте анимированные, простые и стильные диалоги в вашем приложении с помощью Material Dialogs!
Этот пакет предоставляет два типа диалогов: Material Dialog и Bottom Sheet Material Dialog. Также поддерживает анимации с помощью библиотеки Lottie.
👍 Лайки: 351, 📥 Скачиваний: 3.89К
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/material_dialogs

Adaptive Dialog 📱
Пакет позволяет отображать диалоговые окна и модальные листы в зависимости от платформы. Поддерживает iOS и Android.
👍 Лайки: 1050, 📥 Скачиваний: 24.9К
Последнее обновление 📅: 28 часов назад
https://pub.dev/packages/adaptive_dialog

Giffy Dialog 📱
Этот пакет позволяет создавать красивые и кастомизируемые диалоговые окна с анимацией.
👍 Лайки: 598, 📥 Скачиваний: 572
Последнее обновление 📅: 7 месяцев назад
https://pub.dev/packages/giffy_dialog

Flutter Smart Dialog 📱
Этот пакет предназначен для создания элегантных диалоговых окон в приложениях на Flutter. Он поддерживает функции, такие как toast, loading, attach dialog и многое другое.
👍 Лайки: 592, 📥 Скачиваний: 2.57К
Последнее обновление 📅: 25 дней назад
https://pub.dev/packages/flutter_smart_dialog

#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #AwesomeDialog #flutter_platform_alert #MaterialDialogs #AdaptiveDialog #GiffyDialog #FlutterSmartDialog
Лучшие обновленные пакеты за последние 24 часа!

talker_logger 4.9.1
Легкий и настраиваемый логгер для ваших приложений. Обновлены зависимости plugin org.jetbrains.kotlin.android до v2 и com.android.application до v8.10.1.
👍 Лайки: 49, 📥 Скачиваний: 272К
https://pub.dev/packages/talker_logger

flutter_soloud 🎉
Низкоуровневый аудио-плагин для Flutter, предназначенный для игр и иммерсивных приложений.
👍 Лайки: 331, 📥 Скачиваний: 8.5К
https://pub.dev/packages/flutter_soloud

form_builder_validators 7.0.0-alpha.1
Набор валидаторов для виджетов FormField, включая TextFormField, DropdownFormField и другие.
👍 Лайки: 343, 📥 Скачиваний: 164К
https://pub.dev/packages/form_builder_validators

Talker 4.9.1 🚀
Продвинутый обработчик ошибок и логгер для приложений на Dart и Flutter. Обновлены зависимости для talker_http_logger.
👍 Лайки: 726, 📥 Скачиваний: 269К
https://pub.dev/packages/talker

shadcn_ui 0.27.3
Набор компонентов пользовательского интерфейса для Flutter, полностью настраиваемых и готовых к использованию. Исправлены ошибки в компоненте ShadCalendar и в документации.
👍 Лайки: 624, 📥 Скачиваний: 13.2К
https://pub.dev/packages/shadcn_ui

talker_flutter 4.9.1 🚀
Продвинутый обработчик ошибок и логгер для приложений на Dart и Flutter. Обновлены зависимости плагинов org.jetbrains.kotlin.android и com.android.application.
👍 Лайки: 558, 📥 Скачиваний: 192К
https://pub.dev/packages/talker_flutter

#talker_logger #flutter_soloud #form_builder_validators #Talker #shadcn_ui #talker_flutter #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Обработка ошибок с Future
Catch them all 🎯

Неправильная функция

Future<void> functionInError() async {
throw "I am failing"; // Выбрасываем ошибку
}


Неправильный способ обработки

functionInError()
.catchError((err) => print("error catched")) // Перехватываем ошибку
.then(
(value) => print("success"), // Успешное выполнение
onError: (err) => print("I failed"), // Обработка ошибки
);

// Результат:
// error catched
// success


catchError перехватывает ошибку, но не возвращает её. Поэтому then выведет success вместо "I failed".

Правильный способ обработки

functionInError()
.catchError((err) {
print("error catched"); // Печатаем сообщение об ошибке
throw err; // Пробрасываем ошибку дальше
})
.then(
(value) => print("success"), // Успешное выполнение
onError: (err) => print("I failed"), // Обработка ошибки
);

// Результат:
// error catched
// I failed


Лучше обрабатывать ошибки в колбэке onError. Но если хотите цеплять функции друг за другом, не забудьте пробросить ошибку дальше.

Цепочка нескольких Future и обработка ошибок

void main() {
functionInError()
.then((res) => workingFuture()) // Продолжаем цепочку
.then((res) => print("ended")) // Завершаем цепочку
.onError((err) => print("error catched")); // Обрабатываем ошибку
}

Future<void> functionInError() async {
throw "I am failing"; // Выбрасываем ошибку
}

Future<void> workingFuture() async {
print("working future"); // Печатаем сообщение о работе
}

// Результат:
// error catched


Ошибка передаётся в последний onError.

Или обработка ошибок через try-catch с await

main() async {
try {
await functionInError(); // Ждём завершения функции
} catch (err) {
print("I failed"); // Обрабатываем ошибку
}
}


Оцените новую рубрику! 👍💬

Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #Future #ErrorHandling #FlutterTips #MobileDev #CodingTips
Обзор пакетов на тему "Аналитика и потребительские инсайты" (Analytics & Consumer Insights)

Amplitude Flutter SDK 4.3.2
Пакет для аналитики и отслеживания событий в приложениях Flutter.
👍 Лайки: 111, 📥 Скачиваний: 240К
Последнее обновление 📅: 23 дня назад
https://pub.dev/packages/amplitude_flutter

Mixpanel Flutter SDK 2.4.4
Пакет для интеграции Mixpanel в ваши Flutter-приложения. Отслеживайте события и анализируйте поведение пользователей.
👍 Лайки: 133, 📥 Скачиваний: 184К
Последнее обновление 📅: 18 дней назад
https://pub.dev/packages/mixpanel_flutter

AppsFlyer Flutter Plugin 6.16.2
Пакет для интеграции сервиса AppsFlyer в приложения на Flutter. Отслеживайте события и работайте с deeplink.
👍 Лайки: 154, 📥 Скачиваний: 351К
Последнее обновление 📅: 54 дня назад
https://pub.dev/packages/appsflyer_sdk

Facebook App Events 0.20.1
Пакет для отслеживания событий в вашем приложении. Измерьте эффективность рекламы и создайте целевую аудиторию.
👍 Лайки: 303, 📥 Скачиваний: 95.2К
Последнее обновление 📅: 19 дней назад
https://pub.dev/packages/facebook_app_events

Firebase Analytics 11.5.0
Плагин для использования API Firebase Analytics в ваших Flutter-приложениях. Отслеживайте поведение пользователей и принимайте обоснованные решения.
👍 Лайки: 1240, 📥 Скачиваний: 1.64М
Последнее обновление 📅: 11 дней назад
https://pub.dev/packages/firebase_analytics

Datadog Flutter Plugin 2.11.0
Пакет для мониторинга и анализа производительности приложений Flutter в реальном времени.
👍 Лайки: 38, 📥 Скачиваний: 238К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/datadog_flutter_plugin

#amplitude_flutter #mixpanel_flutter #appsflyer_sdk #facebook_app_events #firebase_analytics #datadog_flutter_plugin #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
Лучшие обновленные пакеты за последние 24 часа!

jovial_svg 1.1.27
Пакет для быстрого и эффективного рендеринга статических SVG-изображений в Flutter. В новой версии исправлена проблема с платформой, не вызывающей методы Canvas.save/restore с BoxPainter.
👍 Лайки: 226, 📥 Скачиваний: 200К
https://pub.dev/packages/jovial_svg

flutter_localization 0.3.3
Пакет для локализации приложений на Flutter с помощью данных Map. Теперь он стал еще быстрее и проще в использовании. В новой версии исправлена проблема с Platform._localeName на платформе Web.
👍 Лайки: 407, 📥 Скачиваний: 84.6К
https://pub.dev/packages/flutter_localization

flutter_local_notifications 19.3.0
Пакет для отображения локальных уведомлений на Android, iOS, macOS, Linux и Windows. Теперь вы можете отменить все запланированные уведомления с помощью нового метода cancelAllPendingNotifications().
👍 Лайки: 7К, 📥 Скачиваний: 1.28М
https://pub.dev/packages/flutter_local_notifications

persistent_bottom_nav_bar_v2 6.0.0
Популярный пакет для Flutter с анимированными иконками, улучшениями и исправлениями ошибок. Теперь вы можете прокручивать страницу до верха двойным тапом на иконку вкладки и динамически скрывать/отображать вкладки во время выполнения.
👍 Лайки: 385, 📥 Скачиваний: 13.9К
https://pub.dev/packages/persistent_bottom_nav_bar_v2

Decimal v0.1.3
Пакет для выполнения вычислений с десятичными числами без потери точности. В новой версии добавлены новые методы: Decimal.signum, Decimal.hasFinitePrecision, Decimal.precision, Decimal.scale.
👍 Лайки: 400, 📥 Скачиваний: 567К
https://pub.dev/packages/decimal

flutter_local_notifications_platform_interface 9.1.0
Пакет для создания общего интерфейса для плагина flutter_local_notifications на разных платформах. Теперь доступен новый метод cancelAllPendingNotifications() для отмены всех запланированных уведомлений.
👍 Лайки: 35, 📥 Скачиваний: 1.2М
https://pub.dev/packages/flutter_local_notifications_platform_interface

#jovial_svg #flutter_localization #flutter_local_notifications #persistent_bottom_nav_bar_v2 #Decimal #flutter_local_notifications_platform_interface #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages