flutter-expert

Jeffallan/claude-skills · Agent Skill

Экспертный помощник для разработки кроссплатформенных приложений на Flutter 3 и Dart. Помогает с созданием виджетов, настройкой стейт-менеджмента через Riverpod или Bloc, маршрутизацией GoRouter и оптимизацией производительности кода.

Перейти к установке ↓

Обзор

АвторJeffallanСообщество
РепозиторийJeffallan/claude-skills
Папка скиллаflutter-expert
Звёзды11 999
Форки1 150
Файлы7
Обновлён21 октября 2026 г.

Проверка Mozgi

Что мы нашли в файлах скилла. Подробности — по подписке.

Безопасность
низкий риск · явных рисков не найдено — полный отчёт покажет детали
Совместимость
только инструкции — подходит большинству агентов
Похожие скиллы
найдено 144 похожих скилла
Ещё в подписке

Установка

Скилл — это папка с файлом SKILL.md. Выберите своего агента и скопируйте команды в терминал (macOS, Linux или Git Bash на Windows) в корне проекта.

Скопируйте промпт и вставьте в Claude, Codex или другого ассистента: он сам проверит скилл и подключит его.

Установи мне скилл «flutter-expert» с mozgi.io (https://mozgi.io/skills/flutter-expert/).

1. Скачай архив: https://mozgi.io/skills/flutter-expert/download
2. Прочитай SKILL.md и остальные файлы. Проверь, что скилл безопасен: нет скрытых команд, отправки данных наружу или скриптов, которые делают не то, что описано. Если что-то подозрительно — остановись и скажи мне.
3. Положи папку «flutter-expert» в папку скиллов своего агента: .claude/skills/ для Claude Code, .agents/skills/ для Codex, .cursor/skills/ для Cursor, .gemini/skills/ для Gemini CLI. В проекте — внутри проекта, иначе в домашней папке (~/.claude/skills/ и т. п.).
4. Убедись, что получилось <папка скиллов>/flutter-expert/SKILL.md.
5. Коротко расскажи, что умеет этот скилл, и предложи попробовать его на моей задаче.

Если какой-то шаг не можешь сделать сам — подскажи, что нажать или ввести.

Файлы скилла

7 файлов Скачать ZIP

Просмотрите SKILL.md и сопутствующие файлы перед установкой. Клик по файлу — предпросмотр.

Содержимое SKILL.md

Оригинальный текст автора · только чтение

Flutter Expert

Senior mobile engineer building high-performance cross-platform applications with Flutter 3 and Dart.

When to Use This Skill

  • Building cross-platform Flutter applications
  • Implementing state management (Riverpod, Bloc)
  • Setting up navigation with GoRouter
  • Creating custom widgets and animations
  • Optimizing Flutter performance
  • Platform-specific implementations

Core Workflow

1. Setup — Scaffold project, add dependencies (flutter pub get), configure routing

2. State — Define Riverpod providers or Bloc/Cubit classes; verify with flutter analyze

  • If flutter analyze reports issues: fix all lints and warnings before proceeding; re-run until clean

3. Widgets — Build reusable, const-optimized components; run flutter test after each feature

  • If tests fail: inspect widget tree with Flutter DevTools, fix failing assertions, re-run flutter test

4. Test — Write widget and integration tests; confirm with flutter test --coverage

  • If coverage drops or tests fail: identify untested branches, add targeted tests, re-run before merging

5. Optimize — Profile with Flutter DevTools (flutter run --profile), eliminate jank, reduce rebuilds

  • If jank persists: check rebuild counts in the Performance overlay, isolate expensive build() calls, apply const or move state closer to consumers

Reference Guide

Load detailed guidance based on context:

| Topic | Reference | Load When |

|-------|-----------|-----------|

| Riverpod | references/riverpod-state.md | State management, providers, notifiers |

| Bloc | references/bloc-state.md | Bloc, Cubit, event-driven state, complex business logic |

| GoRouter | references/gorouter-navigation.md | Navigation, routing, deep linking |

| Widgets | references/widget-patterns.md | Building UI components, const optimization |

| Structure | references/project-structure.md | Setting up project, architecture |

| Performance | references/performance.md | Optimization, profiling, jank fixes |

Code Examples

Riverpod Provider + ConsumerWidget (correct pattern)

// provider definition — Notifier, not the legacy StateNotifier
final counterProvider = NotifierProvider<CounterNotifier, int>(CounterNotifier.new);

class CounterNotifier extends Notifier<int> {
  @override
  int build() => 0;
  void increment() => state = state + 1; // new instance, never mutate
}

// consuming widget — use ConsumerWidget, not StatefulWidget
class CounterView extends ConsumerWidget {
  const CounterView({super.key});

  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final count = ref.watch(counterProvider);
    return Text('$count');
  }
}

Before / After — State Management

// ❌ WRONG: app-wide state in setState
class _BadCounterState extends State<BadCounter> {
  int _count = 0;
  void _inc() => setState(() => _count++); // causes full subtree rebuild
}

// ✅ CORRECT: scoped Riverpod consumer
class GoodCounter extends ConsumerWidget {
  const GoodCounter({super.key});
  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final count = ref.watch(counterProvider);
    return IconButton(
      onPressed: () => ref.read(counterProvider.notifier).increment(),
      icon: const Icon(Icons.add), // const on static widgets
    );
  }
}

Constraints

MUST DO

  • Use const constructors wherever possible
  • Implement proper keys for lists
  • Use Consumer/ConsumerWidget for state (not StatefulWidget)
  • Follow Material/Cupertino design guidelines
  • Profile with DevTools, fix jank
  • Test widgets with flutter_test

MUST NOT DO

  • Build widgets inside build() method
  • Mutate state directly (always create new instances)
  • Use setState for app-wide state
  • Skip const on static widgets
  • Ignore platform-specific behavior
  • Block UI thread with heavy computation (use compute())

Troubleshooting Common Failures

| Symptom | Likely Cause | Recovery |

|---------|-------------|----------|

| flutter analyze errors | Unresolved imports, missing const, type mismatches | Fix flagged lines; run flutter pub get if imports are missing |

| Widget test assertion failures | Widget tree mismatch or async state not settled | Use tester.pumpAndSettle() after state changes; verify finder selectors |

| Build fails after adding package | Incompatible dependency version | Run flutter pub upgrade --major-versions; check pub.dev compatibility |

| Jank / dropped frames | Expensive build() calls, uncached widgets, heavy main-thread work | Use RepaintBoundary, move heavy work to compute(), add const |

| Hot reload not reflecting changes | State held in Notifier not reset | Use hot restart (R in terminal) to reset full app state |

Output Templates

When implementing Flutter features, provide:

1. Widget code with proper const usage

2. Provider/Bloc definitions

3. Route configuration if needed

4. Test file structure

Maintained by @jeffallan ↗, Principal Consultant at Synergetic Solutions ↗

Documentation ↗

Вопросы и ответы

Что делает скилл flutter-expert?

Экспертный помощник для разработки кроссплатформенных приложений на Flutter 3 и Dart. Помогает с созданием виджетов, настройкой стейт-менеджмента через Riverpod или Bloc, маршрутизацией GoRouter и оптимизацией производительности кода.

Как установить flutter-expert?

Откройте блок «Установка» на этой странице и выберите своего агента — Claude Code, Codex, Cursor или Gemini CLI: там готовые команды, которые копируют папку скилла в нужное место. Либо скопируйте промпт из вкладки «Через ассистента» — ассистент сам проверит и подключит скилл.

С какими нейросетями работает flutter-expert?

Скиллы — это обычные инструкции в Markdown (формат Agent Skills), поэтому flutter-expert подходит любому агенту, который читает SKILL.md: Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode и другие. Модель загружает инструкции только когда задача подходит под описание скилла.

Скилл flutter-expert бесплатный?

Скилл опубликован автором Jeffallan в открытом доступе под лицензией MIT. Сам скилл ничего не стоит — вы платите только своему провайдеру нейросети за использованные токены.

Безопасно ли устанавливать скиллы?

Скилл — это инструкции, которые агент будет выполнять, поэтому перед установкой прочитайте SKILL.md и сопутствующие файлы. Скрипты из папки скилла запускаются только если их запустит агент — следите за тем, что он делает, и не давайте лишних прав.

Чем скилл отличается от MCP-сервера или плагина?

MCP-сервер и плагин дают модели новые инструменты — код, который выполняется и возвращает результат. Скилл даёт знания и порядок действий: как подходить к задаче, какие шаги делать и как выглядит хороший результат. Ему не нужен сервер или ключ API.

Похожие скиллы

Все скиллы →
nextjs-developer Специализированный агент для разработки приложений на Next.js 14+. Помогает с настройкой App Router, серверных компонентов, Server Actions, оптимизацией производительности, SEO и развертыванием проектов на платформе Vercel. Jeffallan12k playwright-expert Специализированный агент для автоматизации тестирования веб-интерфейсов с помощью Playwright. Помогает писать E2E-тесты, настраивать инфраструктуру, внедрять Page Object Model, отлаживать нестабильные сценарии и интегрировать проверки в CI/CD пайплайны. Jeffallan12k fastapi-expert Экспертный помощник для разработки высокопроизводительных асинхронных API на FastAPI и Pydantic V2. Помогает создавать REST-эндпоинты, настраивать JWT-авторизацию, работать с SQLAlchemy и генерировать OpenAPI-документацию. Jeffallan12k game-developer Разрабатывает игровые системы, реализует функции Unity/Unreal Engine и оптимизирует производительность игр, включая сетевые функции и шейдеры. Jeffallan11.4k agent-transcript Добавляет отредактированную стенограмму агента в тело PR или issue GitHub в рамках рабочих процессов OpenClaw. openclaw389k autoreview Автоматизирует проверку кода с использованием различных AI-моделей, предоставляя структурированные отчеты и рекомендации. openclaw389k