🔥 ТОП самых просматриваемых видео по Flutter за неделю! 🔥
Собрали для вас самые полезные, просматриваемые и обсуждаемые видео последних дней. Обучение, код-ревью, конференции и даже магия AI в UI — всё в одном месте! 🎯
1. 🕒📊 Dart Code Metrics | Observable Flutter #63
📊 Узнайте, как Dart Code Metrics может помочь вашей команде писать более чистый код.
⏳ 1 час 50 мин | 📲 5,101 просмотров
▶️ https://www.youtube.com/watch?v=ftPD7jTTsjg
2. 🕒📱 Const vs Final в Dart и Flutter
📊 В этом видео мы обсудим ключевые слова const и final, их использование и разницу между ними.
⏳ 7 мин | 📲 4,425 просмотров
▶️ https://www.youtube.com/watch?v=ySVpiyc6vqo
3. 🕒📱 Код-ревью успешного Flutter-приложения с 100к+ загрузок... И вот что я нашел! 😱
📊 Разбор приложения Cashew на GitHub. Интересные находки, архитектура и полезные фишки.
⏳ 30 мин | 📲 1,979 просмотров
▶️ https://www.youtube.com/watch?v=KNsYFMmHfkg
4. 🕒📱 Клонирование UI Airbnb за СЕКУНДЫ с помощью AI | Flutter Tutorial
📊 Используем Prompt2Flutter — генератор UI через ИИ. Быстро и эффективно!
⏳ 5 мин | 📲 1,832 просмотров
▶️ https://www.youtube.com/watch?v=mxcZcLW71y4
5. 🕒📱 Flutter для начинающих • Tutorial
📊 Разработка приложений в стиле TikTok, Noon, YouTube — идеальный старт!
⏳ 1 час 14 мин | 📲 1,109 просмотров
▶️ https://www.youtube.com/watch?v=K05a4S7n-G8
6. 🕒📱 Flutter Global Summit 25 - Flutter Day
📊 Всё самое важное с крупнейшего события для Flutter-разработчиков!
⏳ 5 часов 50 мин | 📲 646 просмотров
▶️ https://www.youtube.com/watch?v=L2uJ5iXm4O8
7. 🕒📱 Создание адаптивного дашборда Flutter с помощью AI за секунды | Prompt2Flutter
📊 Пример, как быстро собрать адаптивный дашборд с помощью генерации интерфейса.
⏳ 5 мин | 📲 385 просмотров
▶️ https://www.youtube.com/watch?v=Q_9IjbkqwKo
8. 🕒📱 Humpday Q&A/AMA и живое кодирование!
📊 Общение с командой Flutter, обсуждение Dart и сессия живого кодинга.
⏳ 3 часа 2 мин | 📲 378 просмотров
▶️ https://www.youtube.com/watch?v=DfMHiEs5j2o
9. 🕒📱 Получение данных из подколлекций Firebase Firestore в Flutter
📊 Как правильно извлекать и структурировать данные в вашем Firestore-проекте.
⏳ 9 мин | 📲 296 просмотров
▶️ https://www.youtube.com/watch?v=uf-IEqWXcfw
🧠 Смотрите самые интересные и полезные видео по Flutter, Dart и мобильной разработке!
📲 Подписывайтесь, чтобы не пропустить свежие подборки и гайды!
#Flutter #Dart #PubDev #FlutterPulse #FlutterPulseYouTube #МобильнаяРазработка #Программирование #РазработкаПриложений
Собрали для вас самые полезные, просматриваемые и обсуждаемые видео последних дней. Обучение, код-ревью, конференции и даже магия AI в UI — всё в одном месте! 🎯
1. 🕒📊 Dart Code Metrics | Observable Flutter #63
📊 Узнайте, как Dart Code Metrics может помочь вашей команде писать более чистый код.
⏳ 1 час 50 мин | 📲 5,101 просмотров
▶️ https://www.youtube.com/watch?v=ftPD7jTTsjg
2. 🕒📱 Const vs Final в Dart и Flutter
📊 В этом видео мы обсудим ключевые слова const и final, их использование и разницу между ними.
⏳ 7 мин | 📲 4,425 просмотров
▶️ https://www.youtube.com/watch?v=ySVpiyc6vqo
3. 🕒📱 Код-ревью успешного Flutter-приложения с 100к+ загрузок... И вот что я нашел! 😱
📊 Разбор приложения Cashew на GitHub. Интересные находки, архитектура и полезные фишки.
⏳ 30 мин | 📲 1,979 просмотров
▶️ https://www.youtube.com/watch?v=KNsYFMmHfkg
4. 🕒📱 Клонирование UI Airbnb за СЕКУНДЫ с помощью AI | Flutter Tutorial
📊 Используем Prompt2Flutter — генератор UI через ИИ. Быстро и эффективно!
⏳ 5 мин | 📲 1,832 просмотров
▶️ https://www.youtube.com/watch?v=mxcZcLW71y4
5. 🕒📱 Flutter для начинающих • Tutorial
📊 Разработка приложений в стиле TikTok, Noon, YouTube — идеальный старт!
⏳ 1 час 14 мин | 📲 1,109 просмотров
▶️ https://www.youtube.com/watch?v=K05a4S7n-G8
6. 🕒📱 Flutter Global Summit 25 - Flutter Day
📊 Всё самое важное с крупнейшего события для Flutter-разработчиков!
⏳ 5 часов 50 мин | 📲 646 просмотров
▶️ https://www.youtube.com/watch?v=L2uJ5iXm4O8
7. 🕒📱 Создание адаптивного дашборда Flutter с помощью AI за секунды | Prompt2Flutter
📊 Пример, как быстро собрать адаптивный дашборд с помощью генерации интерфейса.
⏳ 5 мин | 📲 385 просмотров
▶️ https://www.youtube.com/watch?v=Q_9IjbkqwKo
8. 🕒📱 Humpday Q&A/AMA и живое кодирование!
📊 Общение с командой Flutter, обсуждение Dart и сессия живого кодинга.
⏳ 3 часа 2 мин | 📲 378 просмотров
▶️ https://www.youtube.com/watch?v=DfMHiEs5j2o
9. 🕒📱 Получение данных из подколлекций Firebase Firestore в Flutter
📊 Как правильно извлекать и структурировать данные в вашем Firestore-проекте.
⏳ 9 мин | 📲 296 просмотров
▶️ https://www.youtube.com/watch?v=uf-IEqWXcfw
🧠 Смотрите самые интересные и полезные видео по Flutter, Dart и мобильной разработке!
📲 Подписывайтесь, чтобы не пропустить свежие подборки и гайды!
#Flutter #Dart #PubDev #FlutterPulse #FlutterPulseYouTube #МобильнаяРазработка #Программирование #РазработкаПриложений
Адаптивный конструктор одного виджета с помощью DeviceSizeBuilder
В этой статье мы рассмотрим, как использовать DeviceSizeBuilder для адаптации небольших частей экрана под разные типы устройств.
Чтобы иметь доступ к методу didChangeMetrics, нам нужно использовать WidgetsBinding:
Мы хотим перестроить дочерний элемент только при изменении типа устройства.
Наши точки останова:
Оцените новую рубрику и напишите нам о своих впечатлениях! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #ResponsiveDesign #UI #UX #Widgets #CodingTips
В этой статье мы рассмотрим, как использовать DeviceSizeBuilder для адаптации небольших частей экрана под разные типы устройств.
@override
Widget build(BuildContext context) {
return DeviceSizeBuilder(
builder: (device) => Column(
children: [
switch (device) {
DeviceType.small => const Spacer(),
// игнорируем остальные случаи
},
ElevatedButton(
onTap: () {},
child: Text('tap me'),
),
],
),
);
}
Чтобы иметь доступ к методу didChangeMetrics, нам нужно использовать WidgetsBinding:
class DeviceSizeBuilder extends StatefulWidget {
const DeviceSizeBuilder({
super.key,
required this.builder,
});
@override
State<DeviceSizeBuilder> createState() => _DeviceSizeBuilderState();
}
class _DeviceSizeBuilderState extends State<DeviceSizeBuilder> with WidgetsBindingObserver {
late DeviceType _lastSize;
@override
void initState() {
super.initState();
WidgetsBinding.instance.addObserver(this);
_lastSize = widget.builder;
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
super.dispose();
}
@override
void didChangeMetrics() {
super.didChangeMetrics();
final newSize = DeviceType.fromWidth(viewportWidth);
if (_lastSize != newSize) {
setState(() {});
}
}
double get viewportWidth => MediaQuery.of(context).size.width;
@override
Widget build(BuildContext context) {
_lastSize = DeviceType.fromWidth(viewportWidth);
return widget.builder(_lastSize);
}
}
Мы хотим перестроить дочерний элемент только при изменении типа устройства.
Наши точки останова:
enum DeviceType {
small(0),
medium(600),
large(1024),
Xlarge(2200);
final double breakpoint;
const DeviceType(this.breakpoint);
static DeviceType fromWidth(double width) {
return switch (width) {
< 600 => DeviceType.small,
< 1024 => DeviceType.medium,
< 2200 => DeviceType.large,
_ => DeviceType.Xlarge,
};
}
}
Оцените новую рубрику и напишите нам о своих впечатлениях! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #ResponsiveDesign #UI #UX #Widgets #CodingTips
Обзор пакетов на тему "Выбор цвета и утилиты"
Material Color Utilities 🎨
Этот пакет используется для работы с цветами в Material Design 3, включая выбор темы из изображений и создание тонов цветов.
👍 Лайки: 240, 📥 Скачиваний: 5.36М
Последнее обновление 📅: 6 дней назад
https://pub.dev/packages/material_color_utilities
Palette Generator 🖌️
Пакет для Flutter - инструмент для извлечения основных цветов из изображений. Часто используется для создания цветовых схем интерфейса пользователя.
👍 Лайки: 672, 📥 Скачиваний: 7.59К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/palette_generator
FlexSeedScheme 🌱
Этот пакет позволяет создавать более гибкие и мощные цветовые схемы для Flutter-приложений.
👍 Лайки: 87, 📥 Скачиваний: 300К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/flex_seed_scheme
AnsiColor 🖥️
Добавьте цвета в свои терминальные программы с помощью AnsiPen. Легко отключить для продакшена.
👍 Лайки: 158, 📥 Скачиваний: 1.35М
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/ansicolor
FlexColorPicker 🎨
Этот пакет позволяет создавать настраиваемые цветовые палитры для ваших приложений. Включает 6 разных типов цветовых палитр, поддержку Material Design 2 и 3, а также возможность копирования и вставки цветов.
👍 Лайки: 554, 📥 Скачиваний: 241К
Последнее обновление 📅: 42 дня назад
https://pub.dev/packages/flex_color_picker
flutter_colorpicker 🎨
Этот пакет позволяет вам создавать удобные и настраиваемые селекторы цвета для ваших приложений. Поддерживает форматы HSV, HSL, RGB и Material.
👍 Лайки: 977, 📥 Скачиваний: 270К
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/flutter_colorpicker
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #MaterialColorUtilities #PaletteGenerator #FlexSeedScheme #AnsiColor #FlexColorPicker #flutter_colorpicker
Material Color Utilities 🎨
Этот пакет используется для работы с цветами в Material Design 3, включая выбор темы из изображений и создание тонов цветов.
👍 Лайки: 240, 📥 Скачиваний: 5.36М
Последнее обновление 📅: 6 дней назад
https://pub.dev/packages/material_color_utilities
Palette Generator 🖌️
Пакет для Flutter - инструмент для извлечения основных цветов из изображений. Часто используется для создания цветовых схем интерфейса пользователя.
👍 Лайки: 672, 📥 Скачиваний: 7.59К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/palette_generator
FlexSeedScheme 🌱
Этот пакет позволяет создавать более гибкие и мощные цветовые схемы для Flutter-приложений.
👍 Лайки: 87, 📥 Скачиваний: 300К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/flex_seed_scheme
AnsiColor 🖥️
Добавьте цвета в свои терминальные программы с помощью AnsiPen. Легко отключить для продакшена.
👍 Лайки: 158, 📥 Скачиваний: 1.35М
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/ansicolor
FlexColorPicker 🎨
Этот пакет позволяет создавать настраиваемые цветовые палитры для ваших приложений. Включает 6 разных типов цветовых палитр, поддержку Material Design 2 и 3, а также возможность копирования и вставки цветов.
👍 Лайки: 554, 📥 Скачиваний: 241К
Последнее обновление 📅: 42 дня назад
https://pub.dev/packages/flex_color_picker
flutter_colorpicker 🎨
Этот пакет позволяет вам создавать удобные и настраиваемые селекторы цвета для ваших приложений. Поддерживает форматы HSV, HSL, RGB и Material.
👍 Лайки: 977, 📥 Скачиваний: 270К
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/flutter_colorpicker
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #MaterialColorUtilities #PaletteGenerator #FlexSeedScheme #AnsiColor #FlexColorPicker #flutter_colorpicker
Внимание всем разработчикам на Flutter! 🚀💻
Анна из Friflex Flutter Team Lead 👋 сегодня решила поговорить о режимах сборки в Flutter 🤔.
Вы знали, что существуют три основных режима: debug, profile и release? 🤷♀️
Давайте разберемся, чем они отличаются и когда их лучше использовать 📊.
◾️ Debug-режим - это режим отладки 🐜, где вы можете легко отслеживать значения переменных, останавливать выполнение по breakpoints и использовать hot reload 🔥.
Кроме этого, в debug-режиме вы можете подключать дополнительные инструменты, такие как DevTools и Flutter inspector 🛠️.
◾️ Profile-режим - это что-то среднее между debug- и release-режимами 🤝, где вы можете исследовать производительность приложения и оптимизировать код 📈.
Но помните, что profile-режим не поддерживается эмуляторами и симуляторами 📴, поэтому его стоит запускать на физических устройствах 📊.
◾️ Release-режим - это режим выпуска 🚀, где сборка максимально оптимизирована и не поддерживает дополнительные инструменты 🚫.
Хотите узнать больше о режимах сборки в Flutter? 🤔
Читайте полную статью по ссылке: https://t.me/flutterfriendly/164 📎
И не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений в мире Flutter! 📱
#flutter #dart #flutterpulse 💻👍
Анна из Friflex Flutter Team Lead 👋 сегодня решила поговорить о режимах сборки в Flutter 🤔.
Вы знали, что существуют три основных режима: debug, profile и release? 🤷♀️
Давайте разберемся, чем они отличаются и когда их лучше использовать 📊.
◾️ Debug-режим - это режим отладки 🐜, где вы можете легко отслеживать значения переменных, останавливать выполнение по breakpoints и использовать hot reload 🔥.
Кроме этого, в debug-режиме вы можете подключать дополнительные инструменты, такие как DevTools и Flutter inspector 🛠️.
◾️ Profile-режим - это что-то среднее между debug- и release-режимами 🤝, где вы можете исследовать производительность приложения и оптимизировать код 📈.
Но помните, что profile-режим не поддерживается эмуляторами и симуляторами 📴, поэтому его стоит запускать на физических устройствах 📊.
◾️ Release-режим - это режим выпуска 🚀, где сборка максимально оптимизирована и не поддерживает дополнительные инструменты 🚫.
Хотите узнать больше о режимах сборки в Flutter? 🤔
Читайте полную статью по ссылке: https://t.me/flutterfriendly/164 📎
И не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений в мире Flutter! 📱
#flutter #dart #flutterpulse 💻👍
Лучшие обновленные пакеты за последние 24 часа!
Graphic (2.6.0)
Эта библиотека используется для создания гибких и интерактивных графиков и диаграмм в приложениях Flutter. В новой версии добавлены ступенчатые формы для линейных и областных графиков, улучшена стабильность и обновлены зависимости.
👍 Лайки: 813, 📥 Скачиваний: 57.1К
https://pub.dev/packages/graphic
gRPC (4.1.0)
Пакет gRPC - это высокопроизводительный, открытый фреймворк для создания RPC-сервисов. В новой версии добавлена поддержка серверных перехватчиков (serverInterceptors) в ConnectionServer.
👍 Лайки: 432, 📥 Скачиваний: 323К
https://pub.dev/packages/grpc
purchases_flutter (8.10.2)
Пакет purchases_flutter - это клиент для системы отслеживания подписок и покупок RevenueCat. В новой версии обновлены зависимости.
👍 Лайки: 806, 📥 Скачиваний: 149К
https://pub.dev/packages/purchases_flutter
google_maps_flutter_ios (2.15.3)
Пакет google_maps_flutter_ios - это реализация Google Maps для iOS в Flutter. В новой версии исправлены новые предупреждения анализа и обновлена минимальная поддерживаемая версия SDK.
👍 Лайки: 9, 📥 Скачиваний: 739К
https://pub.dev/packages/google_maps_flutter_ios
watcher (1.1.2)
Пакет watcher используется для мониторинга изменений в директориях и отправки уведомлений. В новой версии исправлена ошибка на Windows.
👍 Лайки: 216, 📥 Скачиваний: 7.2М
https://pub.dev/packages/watcher
supabase_flutter (0.0.1-dev.1)
Этот пакет позволяет легко интегрировать Supabase в ваши Flutter-приложения. Обновление включает в себя первоначальный выпуск пакета.
👍 Лайки: 821, 📥 Скачиваний: 170К
https://pub.dev/packages/supabase_flutter
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #Graphic #gRPC #purchases_flutter #google_maps_flutter_ios #watcher #supabase_flutter
Graphic (2.6.0)
Эта библиотека используется для создания гибких и интерактивных графиков и диаграмм в приложениях Flutter. В новой версии добавлены ступенчатые формы для линейных и областных графиков, улучшена стабильность и обновлены зависимости.
👍 Лайки: 813, 📥 Скачиваний: 57.1К
https://pub.dev/packages/graphic
gRPC (4.1.0)
Пакет gRPC - это высокопроизводительный, открытый фреймворк для создания RPC-сервисов. В новой версии добавлена поддержка серверных перехватчиков (serverInterceptors) в ConnectionServer.
👍 Лайки: 432, 📥 Скачиваний: 323К
https://pub.dev/packages/grpc
purchases_flutter (8.10.2)
Пакет purchases_flutter - это клиент для системы отслеживания подписок и покупок RevenueCat. В новой версии обновлены зависимости.
👍 Лайки: 806, 📥 Скачиваний: 149К
https://pub.dev/packages/purchases_flutter
google_maps_flutter_ios (2.15.3)
Пакет google_maps_flutter_ios - это реализация Google Maps для iOS в Flutter. В новой версии исправлены новые предупреждения анализа и обновлена минимальная поддерживаемая версия SDK.
👍 Лайки: 9, 📥 Скачиваний: 739К
https://pub.dev/packages/google_maps_flutter_ios
watcher (1.1.2)
Пакет watcher используется для мониторинга изменений в директориях и отправки уведомлений. В новой версии исправлена ошибка на Windows.
👍 Лайки: 216, 📥 Скачиваний: 7.2М
https://pub.dev/packages/watcher
supabase_flutter (0.0.1-dev.1)
Этот пакет позволяет легко интегрировать Supabase в ваши Flutter-приложения. Обновление включает в себя первоначальный выпуск пакета.
👍 Лайки: 821, 📥 Скачиваний: 170К
https://pub.dev/packages/supabase_flutter
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #Graphic #gRPC #purchases_flutter #google_maps_flutter_ios #watcher #supabase_flutter
Выход за рамки Material: добавление пользовательских цветов в тему Flutter
Хотите выйти за пределы стандартных ограничений Material Design в вашем приложении Flutter? 🤔 В этой статье мы расскажем, как создать расширение темы для добавления пользовательских цветов! 🎨
Шаг 1: Создание ThemeExtension
Для начала создайте класс, который будет предоставлять ваши цвета. Этот класс должен расширять
Шаг 2: Добавление расширения в тему Material
Теперь добавьте созданное расширение в вашу тему Material, используя свойство
Шаг 3: Использование цветов из расширения
Чтобы получить доступ к вашим цветам в любом месте приложения, используйте следующий код:
Оцените новую рубрику Flutter Pulse Tips и оставьте свои отзывы! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #mobiledevelopment #appdevelopment #uiux #codingtips #FlutterTips #ThemeExtension #CustomColors
Хотите выйти за пределы стандартных ограничений Material Design в вашем приложении Flutter? 🤔 В этой статье мы расскажем, как создать расширение темы для добавления пользовательских цветов! 🎨
Шаг 1: Создание ThemeExtension
Для начала создайте класс, который будет предоставлять ваши цвета. Этот класс должен расширять
ThemeExtension
. Пример реализации:
import 'package:flutter/material.dart';
class AppareanceKitColors extends ThemeExtension<AppareanceKitColors> {
final Color primary;
final Color secondary;
final Color dark;
final Color onePrimary;
final Color background;
final Color onbackground;
final Color surface;
final Color onSurface;
final Color grey1;
final Color grey2;
final Color grey3;
final Color error;
const AppareanceKitColors({
required this.primary,
required this.secondary,
required this.dark,
required this.onePrimary,
required this.background,
required this.onbackground,
required this.surface,
required this.onSurface,
required this.grey1,
required this.grey2,
required this.grey3,
required this.error,
});
factory AppareanceKitColors.light() => const AppareanceKitColors(
primary: Color(0xFFF830FF),
secondary: Color(0xFF3057AD),
dark: Color(0xFF20001D),
onePrimary: Color(0xFF110551),
background: Color(0xFFFFFFFF),
onbackground: Color(0xFF110551),
surface: Color(0xFFAEAEAE),
onSurface: Color(0xFF000000),
grey1: Color(0xFFF9E5FF),
grey2: Color(0xFFFFD8FF),
grey3: Color(0xFF632338),
error: Color(0xFFC41E1E),
);
}
Шаг 2: Добавление расширения в тему Material
Теперь добавьте созданное расширение в вашу тему Material, используя свойство
extensions
:
MaterialApp(
theme: ThemeData(
extensions: [
AppareanceKitColors.light(),
],
),
)
Шаг 3: Использование цветов из расширения
Чтобы получить доступ к вашим цветам в любом месте приложения, используйте следующий код:
extension AppareanceKitThemeExt on BuildContext {
AppareanceKitColors get colors => Theme.of(this).extension<AppareanceKitColors>()!;
}
// Использование
Container(
color: context.colors.primary,
)
Оцените новую рубрику Flutter Pulse Tips и оставьте свои отзывы! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #mobiledevelopment #appdevelopment #uiux #codingtips #FlutterTips #ThemeExtension #CustomColors
Обзор пакетов на тему "Здоровье и Фитнес" 🏋️♀️💪
health_kit_reporter 📊
Позволяет читать, писать и отслеживать данные из HealthKit на iOS. Поддерживает все методы из оригинальной библиотеки HealthKitReporter.
👍 Лайки: 57, 📥 Скачиваний: 2.6К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/health_kit_reporter
Health 🏥
Позволяет читать и записывать данные о здоровье из Apple Health и Google Health Connect. Поддерживает работу с разрешениями, чтение и запись данных о здоровье, тренировках, приеме пищи и многом другом.
👍 Лайки: 604, 📥 Скачиваний: 32.8К
Последнее обновление 📅: 8 дней назад
https://pub.dev/packages/health
Huawei Health Kit Flutter Plugin 📈
Позволяет разработчикам создавать приложения, которые могут доступиться к данным о здоровье и фитнесе пользователей на основе их HUAWEI ID и авторизации.
👍 Лайки: 21, 📥 Скачиваний: 12
Последнее обновление 📅: 5 месяцев назад
https://pub.dev/packages/huawei_health
Polar ❄️
Обёртка для официального Polar SDK, позволяющая легко интегрировать поддержку устройств Polar в ваши приложения на Flutter.
👍 Лайки: 21, 📥 Скачиваний: 1.0К
Последнее обновление 📅: 22 дня назад
https://pub.dev/packages/polar
Pedometer 🚶♀️
Плагин позволяет непрерывно считать шаги и определять статус пешехода (ходьба или остановка) с помощью встроенного датчика пedometer в устройствах iOS и Android.
👍 Лайки: 323, 📥 Скачиваний: 11К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/pedometer
Body Part Selector 🤸♀️
Легкий и красивый селектор частей тела для ваших приложений.
👍 Лайки: 36, 📥 Скачиваний: 382
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/body_part_selector
#health_kit_reporter #Health #HuaweiHealthKitFlutterPlugin #Polar #Pedometer #BodyPartSelector #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
health_kit_reporter 📊
Позволяет читать, писать и отслеживать данные из HealthKit на iOS. Поддерживает все методы из оригинальной библиотеки HealthKitReporter.
👍 Лайки: 57, 📥 Скачиваний: 2.6К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/health_kit_reporter
Health 🏥
Позволяет читать и записывать данные о здоровье из Apple Health и Google Health Connect. Поддерживает работу с разрешениями, чтение и запись данных о здоровье, тренировках, приеме пищи и многом другом.
👍 Лайки: 604, 📥 Скачиваний: 32.8К
Последнее обновление 📅: 8 дней назад
https://pub.dev/packages/health
Huawei Health Kit Flutter Plugin 📈
Позволяет разработчикам создавать приложения, которые могут доступиться к данным о здоровье и фитнесе пользователей на основе их HUAWEI ID и авторизации.
👍 Лайки: 21, 📥 Скачиваний: 12
Последнее обновление 📅: 5 месяцев назад
https://pub.dev/packages/huawei_health
Polar ❄️
Обёртка для официального Polar SDK, позволяющая легко интегрировать поддержку устройств Polar в ваши приложения на Flutter.
👍 Лайки: 21, 📥 Скачиваний: 1.0К
Последнее обновление 📅: 22 дня назад
https://pub.dev/packages/polar
Pedometer 🚶♀️
Плагин позволяет непрерывно считать шаги и определять статус пешехода (ходьба или остановка) с помощью встроенного датчика пedometer в устройствах iOS и Android.
👍 Лайки: 323, 📥 Скачиваний: 11К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/pedometer
Body Part Selector 🤸♀️
Легкий и красивый селектор частей тела для ваших приложений.
👍 Лайки: 36, 📥 Скачиваний: 382
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/body_part_selector
#health_kit_reporter #Health #HuaweiHealthKitFlutterPlugin #Polar #Pedometer #BodyPartSelector #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
Лучшие обновленные пакеты за последние 24 часа!
win32 3.1.4
Пакет win32 предоставляет доступ к Win32 API из Dart. В новой версии исправлена ошибка экспорта crypt32 API.
👍 Лайки: 880, 📥 Скачиваний: 5.4М
https://pub.dev/packages/win32
Flutter Modular 6.4.1
Пакет Flutter Modular предназначен для реализации модульной структуры в ваших проектах на Flutter. В новой версии исправлена ошибка с Dispose в AppModule.
👍 Лайки: 1300, 📥 Скачиваний: 107К
https://pub.dev/packages/flutter_modular
go_router 15.2.0
Пакет go_router используется для декларативного маршрутизации в Flutter. В новой версии добавлены новые методы для типобезопасной маршрутизации.
👍 Лайки: 5320, 📥 Скачиваний: 1.73М
https://pub.dev/packages/go_router
signature 6.1.0
Пакет signature предоставляет высокопроизводительный холст для создания подписей. В новой версии обновлены зависимости и Flutter до версии 3.32.
👍 Лайки: 606, 📥 Скачиваний: 155К
https://pub.dev/packages/signature
file_picker 10.2.0
Пакет file_picker позволяет использовать системный файловый менеджер для выбора файлов. В новой версии добавлена поддержка изображений в формате webp на десктоп-платформах.
👍 Лайки: 4720, 📥 Скачиваний: 1.88М
https://pub.dev/packages/file_picker
shadcn_ui 0.27.2
Пакет shadcn_ui - это набор компонентов пользовательского интерфейса для Flutter. В новой версии исправлены ошибки в компонентах ShadAccordion и ShadContextMenuItem.
👍 Лайки: 608, 📥 Скачиваний: 12.6К
https://pub.dev/packages/shadcn_ui
#win32 #FlutterModular #gorouter #signature #filepicker #shadcnuI #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
win32 3.1.4
Пакет win32 предоставляет доступ к Win32 API из Dart. В новой версии исправлена ошибка экспорта crypt32 API.
👍 Лайки: 880, 📥 Скачиваний: 5.4М
https://pub.dev/packages/win32
Flutter Modular 6.4.1
Пакет Flutter Modular предназначен для реализации модульной структуры в ваших проектах на Flutter. В новой версии исправлена ошибка с Dispose в AppModule.
👍 Лайки: 1300, 📥 Скачиваний: 107К
https://pub.dev/packages/flutter_modular
go_router 15.2.0
Пакет go_router используется для декларативного маршрутизации в Flutter. В новой версии добавлены новые методы для типобезопасной маршрутизации.
👍 Лайки: 5320, 📥 Скачиваний: 1.73М
https://pub.dev/packages/go_router
signature 6.1.0
Пакет signature предоставляет высокопроизводительный холст для создания подписей. В новой версии обновлены зависимости и Flutter до версии 3.32.
👍 Лайки: 606, 📥 Скачиваний: 155К
https://pub.dev/packages/signature
file_picker 10.2.0
Пакет file_picker позволяет использовать системный файловый менеджер для выбора файлов. В новой версии добавлена поддержка изображений в формате webp на десктоп-платформах.
👍 Лайки: 4720, 📥 Скачиваний: 1.88М
https://pub.dev/packages/file_picker
shadcn_ui 0.27.2
Пакет shadcn_ui - это набор компонентов пользовательского интерфейса для Flutter. В новой версии исправлены ошибки в компонентах ShadAccordion и ShadContextMenuItem.
👍 Лайки: 608, 📥 Скачиваний: 12.6К
https://pub.dev/packages/shadcn_ui
#win32 #FlutterModular #gorouter #signature #filepicker #shadcnuI #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Шаблон Riverpod: упрощаем работу с состоянием приложения
Привет, разработчики Flutter! 👋 Сегодня мы рассмотрим полезный совет по использованию Riverpod - популярной библиотеки для управления состоянием приложения. 📈
Проблема: при использовании Riverpod часто приходится писать повторяющийся код, например,
Решение: использование расширений Dart для создания удобных шорткатов. 🔥
Эти расширения позволяют легко получать экземпляр
Пример использования:
Такой подход делает код чище и читабельнее. 📚
Оцените новую рубрику и напишите в комментариях, насколько она вам полезна! 🤔
Все подобные новости можно найти по хэштегу #FlutterPulseTips 👍
#flutter #dart #flutterpulse #FlutterPulseTips #Riverpod #StateManagement #FlutterTips #MobileDevelopment #CodingTips
Привет, разработчики Flutter! 👋 Сегодня мы рассмотрим полезный совет по использованию Riverpod - популярной библиотеки для управления состоянием приложения. 📈
Проблема: при использовании Riverpod часто приходится писать повторяющийся код, например,
ref.read(myProvider).xxx
. Это может быть утомительно и привести к ошибкам. 😩Решение: использование расширений Dart для создания удобных шорткатов. 🔥
extension UserSessionRepositoryProvider on Ref {
UserSessionRepository get userSessionRepository =>
read(userSessionRepositoryProvider);
UserSessionRepository get userSessionRepository$ =>
watch(userSessionRepositoryProvider);
}
Эти расширения позволяют легко получать экземпляр
UserSessionRepository
, используя ref.userSessionRepository
или следить за его изменениями с помощью ref.userSessionRepository$
. 🔄Пример использования:
Future<UserSession> startSession({
required Session session,
}) async {
final activeSession = await ref.userSessionRepository
.getActiveSession(idOrThrow);
if (activeSession != null) {
throw AlreadyRunningSessionException();
}
return ref.userSessionRepository.start(
idOrThrow,
UserSession.fromSession(session),
);
}
Такой подход делает код чище и читабельнее. 📚
Оцените новую рубрику и напишите в комментариях, насколько она вам полезна! 🤔
Все подобные новости можно найти по хэштегу #FlutterPulseTips 👍
#flutter #dart #flutterpulse #FlutterPulseTips #Riverpod #StateManagement #FlutterTips #MobileDevelopment #CodingTips
Обзор пакетов для печати на Flutter 🖨️
flutter_esc_pos_utils - утилиты для работы с принтерами ESC/POS.
Позволяет подключаться к принтерам по Wi-Fi/Ethernet, печатать текст, таблицы, изображения, штрих-коды и QR-коды.
👍 Лайки: 144, 📥 Скачиваний: 8.3К
Последнее обновление 📅: 13 месяцев назад
https://pub.dev/packages/flutter_esc_pos_utils
flutter_thermal_printer - пакет для работы с термальными принтерами на Android, iOS, macOS и Windows.
Поддерживает подключение по Bluetooth, USB, BLE и WiFi.
👍 Лайки: 74, 📥 Скачиваний: 1.8К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/flutter_thermal_printer
printing - пакет для создания и печати документов в формате PDF на устройствах Android и iOS.
Использует пакет pdf для создания PDF-документов.
👍 Лайки: 1.7К, 📥 Скачиваний: 317К
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/printing
flutter_bluetooth_printer - пакет для печати чеков на термопринтерах по Bluetooth в приложениях Flutter.
Позволяет создавать свои собственные чеки, печатать изображения и PDF-файлы, а также отправлять произвольные ESC/POS-команды.
👍 Лайки: 85, 📥 Скачиваний: 2.4К
Последнее обновление 📅: 18 дней назад
https://pub.dev/packages/flutter_bluetooth_printer
print_bluetooth_thermal - пакет для печати на термальных принтерах по Bluetooth.
Позволяет печатать билеты на термальных принтерах размером 58мм или 80мм на устройствах Android и iOS.
👍 Лайки: 124, 📥 Скачиваний: 7.9К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/print_bluetooth_thermal
sunmi_printer_plus - пакет для работы с принтерами Sunmi на Android-устройствах.
Позволяет печатать текст, штрих-коды, QR-коды, изображения и многое другое.
👍 Лайки: 137, 📥 Скачиваний: 7.5К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/sunmi_printer_plus
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #print_bluetooth_thermal #sunmi_printer_plus #flutter_thermal_printer #flutter_esc_pos_utils #flutter_bluetooth_printer #printing
flutter_esc_pos_utils - утилиты для работы с принтерами ESC/POS.
Позволяет подключаться к принтерам по Wi-Fi/Ethernet, печатать текст, таблицы, изображения, штрих-коды и QR-коды.
👍 Лайки: 144, 📥 Скачиваний: 8.3К
Последнее обновление 📅: 13 месяцев назад
https://pub.dev/packages/flutter_esc_pos_utils
flutter_thermal_printer - пакет для работы с термальными принтерами на Android, iOS, macOS и Windows.
Поддерживает подключение по Bluetooth, USB, BLE и WiFi.
👍 Лайки: 74, 📥 Скачиваний: 1.8К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/flutter_thermal_printer
printing - пакет для создания и печати документов в формате PDF на устройствах Android и iOS.
Использует пакет pdf для создания PDF-документов.
👍 Лайки: 1.7К, 📥 Скачиваний: 317К
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/printing
flutter_bluetooth_printer - пакет для печати чеков на термопринтерах по Bluetooth в приложениях Flutter.
Позволяет создавать свои собственные чеки, печатать изображения и PDF-файлы, а также отправлять произвольные ESC/POS-команды.
👍 Лайки: 85, 📥 Скачиваний: 2.4К
Последнее обновление 📅: 18 дней назад
https://pub.dev/packages/flutter_bluetooth_printer
print_bluetooth_thermal - пакет для печати на термальных принтерах по Bluetooth.
Позволяет печатать билеты на термальных принтерах размером 58мм или 80мм на устройствах Android и iOS.
👍 Лайки: 124, 📥 Скачиваний: 7.9К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/print_bluetooth_thermal
sunmi_printer_plus - пакет для работы с принтерами Sunmi на Android-устройствах.
Позволяет печатать текст, штрих-коды, QR-коды, изображения и многое другое.
👍 Лайки: 137, 📥 Скачиваний: 7.5К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/sunmi_printer_plus
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #print_bluetooth_thermal #sunmi_printer_plus #flutter_thermal_printer #flutter_esc_pos_utils #flutter_bluetooth_printer #printing
Лучшие обновленные пакеты за последние 24 часа! 🚀
reactive_forms 18.0.1
Пакет для создания реактивных форм в Flutter. В новой версии исправлены проблемы с реактивностью в PopScope и добавлены новые методы для сброса контроля.
👍 Лайки: 903, 📥 Скачиваний: 76.9К
https://pub.dev/packages/reactive_forms
CamerAwesome 2.5.0
Пакет для интеграции камеры в Flutter-приложения. В новой версии исправлены ошибки с масштабом камеры на iOS и неточным предпросмотром.
👍 Лайки: 1.06К, 📥 Скачиваний: 29.3К
https://pub.dev/packages/camerawesome
pdfx 2.9.2
Пакет для отображения и работы с PDF-документами в Flutter. В новой версии исправлена ошибка PdfViewPinch при компиляции в WASM.
👍 Лайки: 481, 📥 Скачиваний: 229К
https://pub.dev/packages/pdfx
talker_logger 4.8.4
Пакет для логирования в приложениях. В новой версии добавлены аргументы семейства к логам в talker_riverpod_logger.
👍 Лайки: 49, 📥 Скачиваний: 252К
https://pub.dev/packages/talker_logger
Very Good CLI 0.26.0
Инструмент командной строки для Dart. В новой версии обновлены зависимости и лицензии, улучшена поддержка Flutter 3.32.0.
👍 Лайки: 672, 📥 Скачиваний: 71.9К
https://pub.dev/packages/very_good_cli
Talker 4.8.4
Пакет для обработки ошибок и логирования в приложениях на Dart и Flutter. В новой версии добавлены аргументы семейства в логи для Riverpod.
👍 Лайки: 724, 📥 Скачиваний: 248К
https://pub.dev/packages/talker
#reactive_forms #CamerAwesome #pdfx #talker_logger #VeryGoodCLI #Talker #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
reactive_forms 18.0.1
Пакет для создания реактивных форм в Flutter. В новой версии исправлены проблемы с реактивностью в PopScope и добавлены новые методы для сброса контроля.
👍 Лайки: 903, 📥 Скачиваний: 76.9К
https://pub.dev/packages/reactive_forms
CamerAwesome 2.5.0
Пакет для интеграции камеры в Flutter-приложения. В новой версии исправлены ошибки с масштабом камеры на iOS и неточным предпросмотром.
👍 Лайки: 1.06К, 📥 Скачиваний: 29.3К
https://pub.dev/packages/camerawesome
pdfx 2.9.2
Пакет для отображения и работы с PDF-документами в Flutter. В новой версии исправлена ошибка PdfViewPinch при компиляции в WASM.
👍 Лайки: 481, 📥 Скачиваний: 229К
https://pub.dev/packages/pdfx
talker_logger 4.8.4
Пакет для логирования в приложениях. В новой версии добавлены аргументы семейства к логам в talker_riverpod_logger.
👍 Лайки: 49, 📥 Скачиваний: 252К
https://pub.dev/packages/talker_logger
Very Good CLI 0.26.0
Инструмент командной строки для Dart. В новой версии обновлены зависимости и лицензии, улучшена поддержка Flutter 3.32.0.
👍 Лайки: 672, 📥 Скачиваний: 71.9К
https://pub.dev/packages/very_good_cli
Talker 4.8.4
Пакет для обработки ошибок и логирования в приложениях на Dart и Flutter. В новой версии добавлены аргументы семейства в логи для Riverpod.
👍 Лайки: 724, 📥 Скачиваний: 248К
https://pub.dev/packages/talker
#reactive_forms #CamerAwesome #pdfx #talker_logger #VeryGoodCLI #Talker #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Flutter совет: шаблон RevenueCat
Вот несколько методов расширения, чтобы упростить работу с пакетом RevenueCat:
Получение периода подписки продукта в виде Duration
Получение количества пробных дней для продукта
Получение списка характеристик из метаданных RevenueCat в зависимости от языка пользователя
Оцените новую рубрику и напишите своё мнение! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #RevenueCat #boilerplate #mobiledevelopment #appdevelopment #codingtips
Вот несколько методов расширения, чтобы упростить работу с пакетом RevenueCat:
Получение периода подписки продукта в виде Duration
@override
Duration get duration => switch (revenueCatPackage.storeProduct.subscriptionPeriod) {
'P1W' => const Duration(days: 7),
'P1M' => const Duration(days: 30),
'P3M' => const Duration(days: 90),
'P6M' => const Duration(days: 180),
'P1Y' => const Duration(days: 365),
_ => Duration.zero,
};
Получение количества пробных дней для продукта
@override
int? get trialDays {
final introductory = revenueCatPackage.storeProduct.introductoryPrice;
if (introductory == null) {
return null;
}
if (introductory.price == 0) {
final unit = introductory.periodUnit;
switch (unit) {
case PeriodUnit.day:
return introductory.periodNumberOfUnits;
case PeriodUnit.week:
return introductory.periodNumberOfUnits * 7;
case PeriodUnit.month:
return introductory.periodNumberOfUnits * 30;
case PeriodUnit.year:
return introductory.periodNumberOfUnits * 365;
default:
return null;
}
}
return null;
}
Получение списка характеристик из метаданных RevenueCat в зависимости от языка пользователя
@override
List<String>? get features {
final locale = LocaleSettings.currentLocale.languageCode;
if (revenueCatOffer.metadata[locale] == null) {
return null;
}
final data = revenueCatOffer.metadata[locale]! as Map<Object?, Object?>;
final featurerObj = data["features"]! as List<Object?>;
return featurerObj.map((e) => e! as String).toList();
}
Оцените новую рубрику и напишите своё мнение! 👍💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #RevenueCat #boilerplate #mobiledevelopment #appdevelopment #codingtips
Обзор пакетов на тему Кнопки и Кнопки прогресса
Animated Button 🎉
Создайте анимированные кнопки в вашем приложении с помощью этого простого и настраиваемого пакета. Возможности включают настройку высоты, ширины, цвета и тени.
👍 Лайки: 159, 📥 Скачиваний: 773
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/animated_button
Flutter Animated Button 💫
Пакет для создания анимированных кнопок в Flutter. Поддерживает различные типы анимаций и настраиваемые стили.
👍 Лайки: 289, 📥 Скачиваний: 2.3К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/flutter_animated_button
Flutter Swipe Button
Этот пакет позволяет создавать кнопки, которые активируются свайпом, предотвращая случайные клики.
👍 Лайки: 62, 📥 Скачиваний: 9.3К
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/flutter_swipe_button
Timer Button ⏰
Пакет Timer Button позволяет создать кнопку, которая становится активной после задержки времени. Поддерживает различные типы кнопок и настраивается.
👍 Лайки: 83, 📥 Скачиваний: 884
Последнее обновление 📅: 18 дней назад
https://pub.dev/packages/timer_button
GradientElevatedButton 🌟
Создавайте кнопки с градиентными фоновыми изображениями и настраивайте стиль по своему вкусу.
👍 Лайки: 15, 📥 Скачиваний: 830
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/gradient_elevated_button
Pretty Animated Buttons
Включает 12 красивых анимированных кнопок, которые можно легко настроить.
👍 Лайки: 80, 📥 Скачиваний: 1.1К
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/pretty_animated_buttons
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #animatedbutton #flutteranimatedbutton #flutterswipebutton #timerbutton #gradiantelevatedbutton #prettyanimatedbuttons
Animated Button 🎉
Создайте анимированные кнопки в вашем приложении с помощью этого простого и настраиваемого пакета. Возможности включают настройку высоты, ширины, цвета и тени.
👍 Лайки: 159, 📥 Скачиваний: 773
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/animated_button
Flutter Animated Button 💫
Пакет для создания анимированных кнопок в Flutter. Поддерживает различные типы анимаций и настраиваемые стили.
👍 Лайки: 289, 📥 Скачиваний: 2.3К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/flutter_animated_button
Flutter Swipe Button
Этот пакет позволяет создавать кнопки, которые активируются свайпом, предотвращая случайные клики.
👍 Лайки: 62, 📥 Скачиваний: 9.3К
Последнее обновление 📅: 12 месяцев назад
https://pub.dev/packages/flutter_swipe_button
Timer Button ⏰
Пакет Timer Button позволяет создать кнопку, которая становится активной после задержки времени. Поддерживает различные типы кнопок и настраивается.
👍 Лайки: 83, 📥 Скачиваний: 884
Последнее обновление 📅: 18 дней назад
https://pub.dev/packages/timer_button
GradientElevatedButton 🌟
Создавайте кнопки с градиентными фоновыми изображениями и настраивайте стиль по своему вкусу.
👍 Лайки: 15, 📥 Скачиваний: 830
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/gradient_elevated_button
Pretty Animated Buttons
Включает 12 красивых анимированных кнопок, которые можно легко настроить.
👍 Лайки: 80, 📥 Скачиваний: 1.1К
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/pretty_animated_buttons
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #animatedbutton #flutteranimatedbutton #flutterswipebutton #timerbutton #gradiantelevatedbutton #prettyanimatedbuttons
🎯 Flutter совет: Шаблон подписки с Provider
Управление подпиской через
---
🔧 Модель состояния подписки
---
🧩 Регистрация провайдера в main.dart
---
Использование подписки в UI
---
Пример обработки подписки
---
💡 Совет: Периодически проверяйте подписку при запуске приложения — особенно если используете серверную валидацию или Webhook-обновления.
💬 Поделитесь в комментариях, как вы реализуете подписки в своих приложениях!
📌 Все советы рубрики — по хэштегу #FlutterPulseTips
#flutter #dart #provider #architecture #subscriptions #revenuecat #qonversion #boilerplate #mobiledev #FlutterPulseTips #UIUX #premiumapps
Управление подпиской через
Provider
— один из самых чистых и масштабируемых способов построения архитектуры подписок в Flutter. Ниже — полный шаблон, который можно адаптировать под RevenueCat, Qonversion, Firebase и другие платформы.---
🔧 Модель состояния подписки
class SubscriptionModel extends ChangeNotifier {
bool _isSubscribed = false;
DateTime? _expiryDate;
bool get isSubscribed => _isSubscribed;
DateTime? get expiryDate => _expiryDate;
void updateStatus({required bool subscribed, DateTime? expiry}) {
_isSubscribed = subscribed;
_expiryDate = expiry;
notifyListeners();
}
void reset() {
_isSubscribed = false;
_expiryDate = null;
notifyListeners();
}
bool get isExpired {
if (_expiryDate == null) return true;
return DateTime.now().isAfter(_expiryDate!);
}
}
---
🧩 Регистрация провайдера в main.dart
void main() {
runApp(
ChangeNotifierProvider(
create: (_) => SubscriptionModel(),
child: const MyApp(),
),
);
}
---
Использование подписки в UI
Consumer<SubscriptionModel>(
builder: (context, model, _) {
if (model.isSubscribed) {
return const PremiumContent();
}
return Column(
children: [
const Text("Оформите подписку для доступа к премиум-функциям"),
ElevatedButton(
onPressed: () => handleSubscription(context),
child: const Text("Подписаться"),
),
],
);
},
)
---
Пример обработки подписки
Future<void> handleSubscription(BuildContext context) async {
final model = context.read<SubscriptionModel>();
final result = await PurchaseService.buy(); // ваша реализация
if (result.success) {
model.updateStatus(
subscribed: true,
expiry: result.expiryDate,
);
} else {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text("Не удалось оформить подписку")),
);
}
}
---
💡 Совет: Периодически проверяйте подписку при запуске приложения — особенно если используете серверную валидацию или Webhook-обновления.
💬 Поделитесь в комментариях, как вы реализуете подписки в своих приложениях!
📌 Все советы рубрики — по хэштегу #FlutterPulseTips
#flutter #dart #provider #architecture #subscriptions #revenuecat #qonversion #boilerplate #mobiledev #FlutterPulseTips #UIUX #premiumapps