Кроссплатформенный опыт Surf с Flutter Web 🌊💻!
Узнайте все о Flutter Web: плюсы и минусы кроссплатформенного фреймворка 🤔, почему Flutter Web не является "настоящим" вебом 🌐 и как это влияет на производительность и SEO 📊.
Также мы расскажем, как адаптировать мобильное приложение для веб-платформы 📱💻, решить проблемы с навигацией, модальными окнами и Bottom Sheets 🚪.
Наконец, узнайте о возможностях и ограничениях Flutter Web 🌟, как создать адаптивный интерфейс и улучшить UX с помощью специальных виджетов 📈.
Читайте статью и откройте для себя новые возможности Flutter и Dart! 📚
Читать здесь 📖
#flutter #dart #flutterpulse 🚀💻
Узнайте все о Flutter Web: плюсы и минусы кроссплатформенного фреймворка 🤔, почему Flutter Web не является "настоящим" вебом 🌐 и как это влияет на производительность и SEO 📊.
Также мы расскажем, как адаптировать мобильное приложение для веб-платформы 📱💻, решить проблемы с навигацией, модальными окнами и Bottom Sheets 🚪.
Наконец, узнайте о возможностях и ограничениях Flutter Web 🌟, как создать адаптивный интерфейс и улучшить UX с помощью специальных виджетов 📈.
Читайте статью и откройте для себя новые возможности Flutter и Dart! 📚
Читать здесь 📖
#flutter #dart #flutterpulse 🚀💻
Лучшие обновленные пакеты за последние 24 часа!
syncfusion_flutter_datepicker 29.1.39
Пакет для выбора даты в Flutter-приложении. Обновлена минимальная версия Dart до 3.7.
👍 Лайки: 1580, 📥 Скачиваний: 216К
https://pub.dev/packages/syncfusion_flutter_datepicker
syncfusion_flutter_calendar 29.1.39
Пакет для создания календарей в Flutter-приложении. Исправлены ошибки и обновлена минимальная версия Dart до 3.7.
👍 Лайки: 1510, 📥 Скачиваний: 85.4К
https://pub.dev/packages/syncfusion_flutter_calendar
build_runner 2.5.1
Автономный генератор и наблюдатель для Dart. Исправлены ошибки и улучшена работа.
👍 Лайки: 2190, 📥 Скачиваний: 3.98М
https://pub.dev/packages/build_runner
build 2.5.1
Пакет для создания кастомных реализаций Builder и BuildStep. Обновлена зависимость на build_runner_core.
👍 Лайки: 88, 📥 Скачиваний: 4.14М
https://pub.dev/packages/build
syncfusion_flutter_charts 29.2.4
Пакет для создания графиков в Flutter-приложении. Исправлена ошибка, связанная с переключением легенды.
👍 Лайки: 3500, 📥 Скачиваний: 250К
https://pub.dev/packages/syncfusion_flutter_charts
build_resolvers 2.5.1
Пакет для реализации в памяти Resolvers для использования с пакетом build. Обновлена зависимость на build_runner_core.
👍 Лайки: 12, 📥 Скачиваний: 3.87М
https://pub.dev/packages/build_resolvers
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #syncfusion_flutter_datepicker #syncfusion_flutter_calendar #build_runner #build #syncfusion_flutter_charts #build_resolvers
syncfusion_flutter_datepicker 29.1.39
Пакет для выбора даты в Flutter-приложении. Обновлена минимальная версия Dart до 3.7.
👍 Лайки: 1580, 📥 Скачиваний: 216К
https://pub.dev/packages/syncfusion_flutter_datepicker
syncfusion_flutter_calendar 29.1.39
Пакет для создания календарей в Flutter-приложении. Исправлены ошибки и обновлена минимальная версия Dart до 3.7.
👍 Лайки: 1510, 📥 Скачиваний: 85.4К
https://pub.dev/packages/syncfusion_flutter_calendar
build_runner 2.5.1
Автономный генератор и наблюдатель для Dart. Исправлены ошибки и улучшена работа.
👍 Лайки: 2190, 📥 Скачиваний: 3.98М
https://pub.dev/packages/build_runner
build 2.5.1
Пакет для создания кастомных реализаций Builder и BuildStep. Обновлена зависимость на build_runner_core.
👍 Лайки: 88, 📥 Скачиваний: 4.14М
https://pub.dev/packages/build
syncfusion_flutter_charts 29.2.4
Пакет для создания графиков в Flutter-приложении. Исправлена ошибка, связанная с переключением легенды.
👍 Лайки: 3500, 📥 Скачиваний: 250К
https://pub.dev/packages/syncfusion_flutter_charts
build_resolvers 2.5.1
Пакет для реализации в памяти Resolvers для использования с пакетом build. Обновлена зависимость на build_runner_core.
👍 Лайки: 12, 📥 Скачиваний: 3.87М
https://pub.dev/packages/build_resolvers
#Flutter #Dart #pubdev #FlutterPulse #FlutterPulseBestPackages #syncfusion_flutter_datepicker #syncfusion_flutter_calendar #build_runner #build #syncfusion_flutter_charts #build_resolvers
Заменить код типа на объединенный тип
Удаление кода типа из вашего класса с помощью объединенного типа
Представьте, что у вас есть класс, который ведёт себя по-разному в зависимости от своего состояния. Вместо того, чтобы использовать перечисления (enum) и конструкции
Было:
Стало:
Использование:
Преимущества:
• Инкапсуляция кода типа в отдельные классы
• Для каждого типа создается свой подкласс
• Разная логика для разных типов без использования
• Код становится более читаемым и тестируемым
Оцените новую рубрику! 💡📱 Ваши отзывы нам очень важны! 😊
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #Refactoring #CodingTips #SoftwareDevelopment #ProgrammingTips
Удаление кода типа из вашего класса с помощью объединенного типа
Представьте, что у вас есть класс, который ведёт себя по-разному в зависимости от своего состояния. Вместо того, чтобы использовать перечисления (enum) и конструкции
switch
для определения поведения, вы можете использовать новую возможность Dart 3 — sealed классы. Это делает код чище, безопаснее и проще в поддержке.Было:
enum DocumentType {
pdf,
doc,
markdown,
}
class Document {
final String name;
final DocumentType type;
Document({
required this.name,
required this.type,
});
void write(String newLine) {
switch (type) {
case DocumentType.pdf:
// предположим, что у нас есть библиотека для pdf
break;
case DocumentType.doc:
// предположим, что у нас есть библиотека для doc
break;
case DocumentType.markdown:
// предположим, что у нас есть библиотека для markdown
break;
}
}
}
Стало:
sealed class DocumentSealed {
final String name;
DocumentSealed({required this.name});
}
class PdfDocument extends DocumentSealed {
PdfDocument({required super.name});
void write(String newLine) {
// используем библиотеку для pdf
}
}
class DocDocument extends DocumentSealed {
DocDocument({required super.name});
void write(String newLine) {
// используем библиотеку для doc
}
}
class MarkdownDocument extends DocumentSealed {
MarkdownDocument({required super.name});
void write(String newLine) {
// используем библиотеку для markdown
}
}
Использование:
class Widget extends StatelessWidget {
final DocumentSealed document;
const Widget({super.key, required this.document});
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () {
switch (document) {
case PdfDocument _:
document.write('Hello World');
case DocDocument _:
document.write('Hello World');
case MarkdownDocument _:
document.write('Hello World');
}
},
child: Text(document.name),
);
}
}
Преимущества:
• Инкапсуляция кода типа в отдельные классы
• Для каждого типа создается свой подкласс
• Разная логика для разных типов без использования
switch
• Код становится более читаемым и тестируемым
Оцените новую рубрику! 💡📱 Ваши отзывы нам очень важны! 😊
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #Refactoring #CodingTips #SoftwareDevelopment #ProgrammingTips
Обзор пакетов на тему "Постоянные NoSQL базы данных"
Sembast - простое решение для хранения данных в ваших приложениях на Dart и Flutter! 📈
Sembast - это NoSQL база данных, которая хранит все данные в одном файле и загружает их в память при открытии. Поддерживает шифрование и работает на всех платформах, включая MacOS, Android, iOS, Linux и Windows.
👍 Лайки: 1140, 📥 Скачиваний: 163К
Последнее обновление 📅: 25 дней назад
https://pub.dev/packages/sembast
ObjectBox - пакет для управления базами данных в Flutter! 🚀
Позволяет работать с объектами Dart в кроссплатформенных и AI-приложениях.
🔥 Возможности: искусственный интеллект, поиск векторных данных, высокая производительность и минимизация использования ресурсов.
👍 Лайки: 1450, 📥 Скачиваний: 54.9К
Последнее обновление 📅: 21 день назад
https://pub.dev/packages/objectbox
Flutter Secure Storage - безопасное хранение данных в Flutter! 🔒
Позволяет хранить данные в защищённом хранилище на различных платформах.
Использует Keychain на iOS, AES-шифрование на Android и libsecret на Linux.
👍 Лайки: 4180, 📥 Скачиваний: 1.75М
Последнее обновление 📅: 5 месяцев назад
https://pub.dev/packages/flutter_secure_storage
LocalStorage - пакет для хранения небольших объемов данных локально на устройстве пользователя! 📁
Не рекомендуется использовать для хранения больших объемов или конфиденциальных данных.
👍 Лайки: 369, 📥 Скачиваний: 18К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/localstorage
Shared Preferences - простое хранение данных в приложениях! 📝
Позволяет хранить простые данные на различных платформах.
Поддерживает синхронные и асинхронные методы чтения и записи данных.
👍 Лайки: 10200, 📥 Скачиваний: 3.39М
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/shared_preferences
Realm - мобильная база данных, работающая напрямую на устройствах! 📊
Поддерживает последние версии Dart и Flutter и имеет богатый набор функций.
👍 Лайки: 697, 📥 Скачиваний: 47К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/realm
#Sembast #ObjectBox #FlutterSecureStorage #LocalStorage #SharedPrefernces #Realm #Flutter #Dart #PubDev #FlutterPulse #FlutterPulseThemedPackages
Sembast - простое решение для хранения данных в ваших приложениях на Dart и Flutter! 📈
Sembast - это NoSQL база данных, которая хранит все данные в одном файле и загружает их в память при открытии. Поддерживает шифрование и работает на всех платформах, включая MacOS, Android, iOS, Linux и Windows.
👍 Лайки: 1140, 📥 Скачиваний: 163К
Последнее обновление 📅: 25 дней назад
https://pub.dev/packages/sembast
ObjectBox - пакет для управления базами данных в Flutter! 🚀
Позволяет работать с объектами Dart в кроссплатформенных и AI-приложениях.
🔥 Возможности: искусственный интеллект, поиск векторных данных, высокая производительность и минимизация использования ресурсов.
👍 Лайки: 1450, 📥 Скачиваний: 54.9К
Последнее обновление 📅: 21 день назад
https://pub.dev/packages/objectbox
Flutter Secure Storage - безопасное хранение данных в Flutter! 🔒
Позволяет хранить данные в защищённом хранилище на различных платформах.
Использует Keychain на iOS, AES-шифрование на Android и libsecret на Linux.
👍 Лайки: 4180, 📥 Скачиваний: 1.75М
Последнее обновление 📅: 5 месяцев назад
https://pub.dev/packages/flutter_secure_storage
LocalStorage - пакет для хранения небольших объемов данных локально на устройстве пользователя! 📁
Не рекомендуется использовать для хранения больших объемов или конфиденциальных данных.
👍 Лайки: 369, 📥 Скачиваний: 18К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/localstorage
Shared Preferences - простое хранение данных в приложениях! 📝
Позволяет хранить простые данные на различных платформах.
Поддерживает синхронные и асинхронные методы чтения и записи данных.
👍 Лайки: 10200, 📥 Скачиваний: 3.39М
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/shared_preferences
Realm - мобильная база данных, работающая напрямую на устройствах! 📊
Поддерживает последние версии Dart и Flutter и имеет богатый набор функций.
👍 Лайки: 697, 📥 Скачиваний: 47К
Последнее обновление 📅: 35 дней назад
https://pub.dev/packages/realm
#Sembast #ObjectBox #FlutterSecureStorage #LocalStorage #SharedPrefernces #Realm #Flutter #Dart #PubDev #FlutterPulse #FlutterPulseThemedPackages
Flutter + Jules (настройка контейнера для background AI Agent) 🚀💻
Узнайте, как использовать Jules для упрощения вашей работы с Flutter и Dart! 🤩
Новый инструмент разработки от Google - Jules! 🚀 Это бесплатный AI-агент, работающий на платформе Gemini. Он может помочь с поддержкой проектов, автоматизацией задач и даже рефакторингом кода 📈. Tv
Читать здесь📄
Статья немного странная, на мой взгляд, но может я не прав
#flutter #dart #flutterpulse 💻🔥
Узнайте, как использовать Jules для упрощения вашей работы с Flutter и Dart! 🤩
Новый инструмент разработки от Google - Jules! 🚀 Это бесплатный AI-агент, работающий на платформе Gemini. Он может помочь с поддержкой проектов, автоматизацией задач и даже рефакторингом кода 📈. Tv
Читать здесь📄
Статья немного странная, на мой взгляд, но может я не прав
#flutter #dart #flutterpulse 💻🔥
Лучшие обновленные пакеты за последние 24 часа!
location 5.0.0
Пакет location позволяет получать местоположение на Android и iOS, а также предоставляет обратные вызовы при изменении местоположения. В новой версии исправлены ошибки и улучшена стабильность.
👍 Лайки: 3150, 📥 Скачиваний: 240К
https://pub.dev/packages/location
build_resolvers 2.5.2
Пакет build_resolvers используется для реализации в памяти Resolvers для использования с пакетом build. В новой версии упрощены предупреждения для устаревшего анализатора.
👍 Лайки: 12, 📥 Скачиваний: 4.04М
https://pub.dev/packages/build_resolvers
go_router 15.2.3
Пакет go_router - это декларативный пакет маршрутизации для Flutter, позволяющий использовать Router API для навигации между экранами на основе URL. В новой версии обновлена документация по теме "Type-safe routes".
👍 Лайки: 5330, 📥 Скачиваний: 1.8М
https://pub.dev/packages/go_router
infinite_scroll_pagination 5.1.0
Пакет infinite_scroll_pagination используется для реализации бесконечной прокрутки и пагинации в Flutter-приложениях. В новой версии добавлены новые функции и исправлены ошибки.
👍 Лайки: 3770, 📥 Скачиваний: 421К
https://pub.dev/packages/infinite_scroll_pagination
build 2.5.2
Пакет build определяет основные компоненты процесса сборки и их взаимодействие. В новой версии используется `build_runner_core` 9.1.0.
👍 Лайки: 88, 📥 Скачиваний: 4.32М
https://pub.dev/packages/build
build_runner 2.5.2
Пакет build_runner используется для генерации файлов в проектах на Dart. В новой версии упрощены предупреждения об устаревшем анализаторе.
👍 Лайки: 2190, 📥 Скачиваний: 4.16М
https://pub.dev/packages/build_runner
#location #build_resolvers #go_router #infinite_scroll_pagination #build #build_runner #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
location 5.0.0
Пакет location позволяет получать местоположение на Android и iOS, а также предоставляет обратные вызовы при изменении местоположения. В новой версии исправлены ошибки и улучшена стабильность.
👍 Лайки: 3150, 📥 Скачиваний: 240К
https://pub.dev/packages/location
build_resolvers 2.5.2
Пакет build_resolvers используется для реализации в памяти Resolvers для использования с пакетом build. В новой версии упрощены предупреждения для устаревшего анализатора.
👍 Лайки: 12, 📥 Скачиваний: 4.04М
https://pub.dev/packages/build_resolvers
go_router 15.2.3
Пакет go_router - это декларативный пакет маршрутизации для Flutter, позволяющий использовать Router API для навигации между экранами на основе URL. В новой версии обновлена документация по теме "Type-safe routes".
👍 Лайки: 5330, 📥 Скачиваний: 1.8М
https://pub.dev/packages/go_router
infinite_scroll_pagination 5.1.0
Пакет infinite_scroll_pagination используется для реализации бесконечной прокрутки и пагинации в Flutter-приложениях. В новой версии добавлены новые функции и исправлены ошибки.
👍 Лайки: 3770, 📥 Скачиваний: 421К
https://pub.dev/packages/infinite_scroll_pagination
build 2.5.2
Пакет build определяет основные компоненты процесса сборки и их взаимодействие. В новой версии используется `build_runner_core` 9.1.0.
👍 Лайки: 88, 📥 Скачиваний: 4.32М
https://pub.dev/packages/build
build_runner 2.5.2
Пакет build_runner используется для генерации файлов в проектах на Dart. В новой версии упрощены предупреждения об устаревшем анализаторе.
👍 Лайки: 2190, 📥 Скачиваний: 4.16М
https://pub.dev/packages/build_runner
#location #build_resolvers #go_router #infinite_scroll_pagination #build #build_runner #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Использование ИИ в вашем приложении с помощью Gemini
Привет, разработчики Flutter! 🤖💻 Сегодня мы расскажем, как добавить Gemini в ваше приложение с помощью Firebase Functions безопасным способом 🔒.
Почему не стоит использовать плагин flutter_gemini?
Из соображений безопасности я настоятельно предпочитаю не раскрывать свой ключ API Gemini в приложении 🔑.
Шаги по интеграции Gemini с Firebase:
1. Создайте новый проект Firebase с помощью команды
- Установите следующие пакеты:
- @genkit-ai/ai
- @genkit-ai/core
- @genkit-ai/dotprompt
- @genkit-ai/firebase
- @genkit-ai/flow
- @genkit-ai/googleai
- zod
2. Установите genkit глобально:
3. Инициализируйте gemini, используя
Добавьте ключ API в файл
Разверните эту функцию на Firebase с помощью команды
Вызов функции из Flutter:
Оцените нашу новую рубрику и оставьте свои отзывы! 😊👍
Все подобные новости можно найти по хэштегу #FlutterPulseTips.
#flutter #dart #flutterpulse #FlutterPulseTips #Firebase #Gemini #AI #FlutterTips #MobileDev #AppDev
Привет, разработчики Flutter! 🤖💻 Сегодня мы расскажем, как добавить Gemini в ваше приложение с помощью Firebase Functions безопасным способом 🔒.
Почему не стоит использовать плагин flutter_gemini?
Из соображений безопасности я настоятельно предпочитаю не раскрывать свой ключ API Gemini в приложении 🔑.
Шаги по интеграции Gemini с Firebase:
1. Создайте новый проект Firebase с помощью команды
firebase init genkit
или установите необходимые зависимости 📦.- Установите следующие пакеты:
- @genkit-ai/ai
- @genkit-ai/core
- @genkit-ai/dotprompt
- @genkit-ai/firebase
- @genkit-ai/flow
- @genkit-ai/googleai
- zod
2. Установите genkit глобально:
npm install -g genkit
🌐.3. Инициализируйте gemini, используя
configureGenkit
🔧.
import { initializeApp } from "firebase/app";
import { defineString } from "firebase-functions/params";
import { configureGenkit } from '@genkit-ai/core';
import { firebase } from '@genkit-ai/firebase';
defineString('GOOGLE_GENAI_API_KEY');
const firebaseApp = initializeApp();
configureGenkit({
plugins: [
firebase(),
googleAI({ apiKey: defineString('GOOGLE_GENAI_API_KEY') }),
],
// ...
enableTracingAndMetrics: true,
});
Добавьте ключ API в файл
.env
и не забудьте удалить .env
из .gitignore
, иначе Firebase не сможет его использовать 🚫.
export const suggestionFlow = onFlow({
name: "suggestionFlow",
httpsOptions: { cors: true },
region: "europe-west1",
inputSchema: z.object({ uid: z.string(), query: z.string(), language: z.string() }),
outputSchema: z.string(),
authPolicy: (auth, input) => {
// Проверка аутентификации пользователя
if (auth.uid != input.uid) {
throw new Error("You can only access your own data");
}
// Проверка поддерживаемого языка
if (input.language != "fr" && input.language != "en") {
throw new Error("Only French and English are supported for now");
}
// Разрешить доступ только аутентифицированным пользователям
return !!auth.uid;
},
}, async (input) => {
const exercicesContext = JSON.stringify(exercices);
const userLanguage = input.language;
const prompt = `You are an AI assistant that helps users with XXX. You will speak in the user's language: $userLanguage.
You will answer with the JSON format below:
{"days": [{"day": number, "steps": {...}, "description": string}]}
Here is the user query: ${input.query}`;
const llmResponse = await generate({
model: gemini15Flash,
prompt,
config: {
temperature: 1,
maxOutputTokens: 3000,
},
});
return llmResponse.text();
});
Разверните эту функцию на Firebase с помощью команды
firebase deploy --only functions
🚀.Вызов функции из Flutter:
Future<String> fetchStretchingSuggestionFlow(
String uid,
String query,
String userLanguage,
) async {
final callable = FirebaseFunctions.instance.httpsCallable('suggestionFlow');
final result = await callable.call<String>({
'uid': uid,
'query': query,
'language': userLanguage,
});
final data = (await decode(result.data)) as Map<String, dynamic>;
return AIexercice.fromJson(data);
}
Оцените нашу новую рубрику и оставьте свои отзывы! 😊👍
Все подобные новости можно найти по хэштегу #FlutterPulseTips.
#flutter #dart #flutterpulse #FlutterPulseTips #Firebase #Gemini #AI #FlutterTips #MobileDev #AppDev
Обзор пакетов на тему Grid 📚
Waterfall Flow 🌟
Пакет для создания сеток с водопадным макетом в Flutter.
Версия: 3.1.1
👍 Лайки: 201, 📥 Скачиваний: 17.4К
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/waterfall_flow
Animated Reorderable List 📈
Пакет для создания анимированных списков и сеток с функцией перетаскивания элементов.
Версия: 1.3.0
👍 Лайки: 160, 📥 Скачиваний: 12.4К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/animated_reorderable_list
Flutter Layout Grid 📊
Пакет для создания сеток в Flutter с фиксированными, гибкими и контент-ориентированными строками и столбцами.
Версия: 2.0.8
👍 Лайки: 827, 📥 Скачиваний: 150К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/flutter_layout_grid
Multi Split View 📂
Пакет для создания горизонтальных или вертикальных разделенных представлений с настраиваемыми размерами и флексами.
Версия: 3.6.0
👍 Лайки: 318, 📥 Скачиваний: 22.7К
Последнее обновление 📅: 7 месяцев назад
https://pub.dev/packages/multi_split_view
Flutter Reorderable Grid View 📈
Пакет для добавления анимированной функции перетаскивания и изменения размера элементов в ваших GridView.
Версия: 5.5.0
👍 Лайки: 210, 📥 Скачиваний: 20.1К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/flutter_reorderable_grid_view
Boxy 📦
Пакет для Flutter, который помогает преодолеть ограничения встроенных виджетов макета.
Версия: 2.2.1
👍 Лайки: 684, 📥 Скачиваний: 34.8К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/boxy
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #waterfallflow #animatedreorderablelist #flutterlayoutgrid #multisplitview #flutterreorderablegridview #boxy
Waterfall Flow 🌟
Пакет для создания сеток с водопадным макетом в Flutter.
Версия: 3.1.1
👍 Лайки: 201, 📥 Скачиваний: 17.4К
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/waterfall_flow
Animated Reorderable List 📈
Пакет для создания анимированных списков и сеток с функцией перетаскивания элементов.
Версия: 1.3.0
👍 Лайки: 160, 📥 Скачиваний: 12.4К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/animated_reorderable_list
Flutter Layout Grid 📊
Пакет для создания сеток в Flutter с фиксированными, гибкими и контент-ориентированными строками и столбцами.
Версия: 2.0.8
👍 Лайки: 827, 📥 Скачиваний: 150К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/flutter_layout_grid
Multi Split View 📂
Пакет для создания горизонтальных или вертикальных разделенных представлений с настраиваемыми размерами и флексами.
Версия: 3.6.0
👍 Лайки: 318, 📥 Скачиваний: 22.7К
Последнее обновление 📅: 7 месяцев назад
https://pub.dev/packages/multi_split_view
Flutter Reorderable Grid View 📈
Пакет для добавления анимированной функции перетаскивания и изменения размера элементов в ваших GridView.
Версия: 5.5.0
👍 Лайки: 210, 📥 Скачиваний: 20.1К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/flutter_reorderable_grid_view
Boxy 📦
Пакет для Flutter, который помогает преодолеть ограничения встроенных виджетов макета.
Версия: 2.2.1
👍 Лайки: 684, 📥 Скачиваний: 34.8К
Последнее обновление 📅: 6 месяцев назад
https://pub.dev/packages/boxy
#flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages #waterfallflow #animatedreorderablelist #flutterlayoutgrid #multisplitview #flutterreorderablegridview #boxy
Лучшие обновленные пакеты за последние 24 часа!
pdfrx 1.2.7
Просмотрщик PDF, построенный на основе PDFium. Поддерживает Android, iOS, Windows, macOS, Linux и Web. Улучшена инициализация PDFium с опциональными параметрами аутентификации для WASM.
👍 Лайки: 219, 📥 Скачиваний: 162К
https://pub.dev/packages/pdfrx
Tostore 2.1.0
Распределенный векторный движок базы данных для Dart/Flutter. Добавлена поддержка автоматического заполнения текущего времени, улучшена структура индекса B+Tree и механизмы восстановления данных.
👍 Лайки: 30, 📥 Скачиваний: 132К
https://pub.dev/packages/tostore
very_good_cli 0.26.1
Инструмент командной строки для Dart. Исправлены ошибки и обновлены зависимости. Теперь лицензионная проверка корректно завершается, даже если нет зависимостей.
👍 Лайки: 673, 📥 Скачиваний: 83.2К
https://pub.dev/packages/very_good_cli
Jaspr 0.19.1
Современный веб-фреймворк для создания веб-сайтов на Dart. Добавлены константа Color.currentColor, свойства rx и ry для svg-элемента rect() и опция prefersContrast в MediaQuery.
👍 Лайки: 532, 📥 Скачиваний: 11.8К
https://pub.dev/packages/jaspr
Decimal 0.1.3
Пакет для выполнения вычислений с десятичными числами без потери точности. Добавлены новые методы: Decimal.signum, Decimal.hasFinitePrecision, Decimal.precision и Decimal.scale.
👍 Лайки: 400, 📥 Скачиваний: 577К
https://pub.dev/packages/decimal
Liquid Glass Renderer 0.1.1-dev.9
Пакет для создания эффекта "жидкого стекла" или "матового стекла" в Flutter. Исправлены ошибки в документации.
👍 Лайки: 245, 📥 Скачиваний: 973
https://pub.dev/packages/liquid_glass_renderer
#pdfrx #Tostore #very_good_cli #Jaspr #Decimal #LiquidGlassRenderer #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
pdfrx 1.2.7
Просмотрщик PDF, построенный на основе PDFium. Поддерживает Android, iOS, Windows, macOS, Linux и Web. Улучшена инициализация PDFium с опциональными параметрами аутентификации для WASM.
👍 Лайки: 219, 📥 Скачиваний: 162К
https://pub.dev/packages/pdfrx
Tostore 2.1.0
Распределенный векторный движок базы данных для Dart/Flutter. Добавлена поддержка автоматического заполнения текущего времени, улучшена структура индекса B+Tree и механизмы восстановления данных.
👍 Лайки: 30, 📥 Скачиваний: 132К
https://pub.dev/packages/tostore
very_good_cli 0.26.1
Инструмент командной строки для Dart. Исправлены ошибки и обновлены зависимости. Теперь лицензионная проверка корректно завершается, даже если нет зависимостей.
👍 Лайки: 673, 📥 Скачиваний: 83.2К
https://pub.dev/packages/very_good_cli
Jaspr 0.19.1
Современный веб-фреймворк для создания веб-сайтов на Dart. Добавлены константа Color.currentColor, свойства rx и ry для svg-элемента rect() и опция prefersContrast в MediaQuery.
👍 Лайки: 532, 📥 Скачиваний: 11.8К
https://pub.dev/packages/jaspr
Decimal 0.1.3
Пакет для выполнения вычислений с десятичными числами без потери точности. Добавлены новые методы: Decimal.signum, Decimal.hasFinitePrecision, Decimal.precision и Decimal.scale.
👍 Лайки: 400, 📥 Скачиваний: 577К
https://pub.dev/packages/decimal
Liquid Glass Renderer 0.1.1-dev.9
Пакет для создания эффекта "жидкого стекла" или "матового стекла" в Flutter. Исправлены ошибки в документации.
👍 Лайки: 245, 📥 Скачиваний: 973
https://pub.dev/packages/liquid_glass_renderer
#pdfrx #Tostore #very_good_cli #Jaspr #Decimal #LiquidGlassRenderer #flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages
Делегирование дизайна виджета с помощью Фабрик
Delegate widget design with Factories
При создании выбираемого списка элементов, например, вы можете создать фабрику радиокнопок или чекбоксов. Фабрики позволяют определить готовый дизайн или поведение виджетов заранее.
Когда это полезно?
Вы создаете выбираемый список элементов. Вы можете создать фабрику радиокнопок или чекбоксов.
Пример реализации:
1. Определите абстрактный класс фабрики, например,
2. Создайте конкретные реализации фабрики, такие как
3. Определите статические экземпляры фабрик для дальнейшего использования:
4. Используйте фабрику для построения части вашего виджета:
Это позволяет создавать готовые функции построения. Разработчики могут создавать свои собственные фабрики, а также использовать предустановленные.
Оцените новую рубрику и напишите своё мнение! 🤔💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #WidgetDesign #Factories #Refactoring #CodingTips #UI/UX
Delegate widget design with Factories
При создании выбираемого списка элементов, например, вы можете создать фабрику радиокнопок или чекбоксов. Фабрики позволяют определить готовый дизайн или поведение виджетов заранее.
Когда это полезно?
Вы создаете выбираемый список элементов. Вы можете создать фабрику радиокнопок или чекбоксов.
Пример реализации:
1. Определите абстрактный класс фабрики, например,
SelectableFactory
:
abstract class SelectableFactory {
const SelectableFactory();
@factory
Widget create({
final String title,
final bool selected
});
}
2. Создайте конкретные реализации фабрики, такие как
SelectableRadioFactory
:
class _SelectableRadioFactory extends SelectableFactory {
@override
Widget create({
final String title,
final bool selected
}) {
// Создайте ваш виджет здесь
return ListTile(...);
}
}
3. Определите статические экземпляры фабрик для дальнейшего использования:
abstract class SelectableFactory {
static const SelectableFactory radio = _SelectableRadioFactory();
static const SelectableFactory checkbox = _SelectableCheckBoxFactory();
...
}
4. Используйте фабрику для построения части вашего виджета:
AnchoredHelper(
title: const Text(
'Нажми чтобы увеличить',
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.white,
fontSize: 32,
),
),
widgetFactory: AnchoredCircleHoleHelper.anchorFactory,
);
Это позволяет создавать готовые функции построения. Разработчики могут создавать свои собственные фабрики, а также использовать предустановленные.
Оцените новую рубрику и напишите своё мнение! 🤔💬
Все подобные новости можно найти по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #WidgetDesign #Factories #Refactoring #CodingTips #UI/UX