.claude/skills/flutter-expert/SKILL.md
Flutter and Dart expert including widgets, state management, and platform integration
npx skillsauth add oimiragieo/agent-studio flutter-expertInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
This expert skill consolidates 1 individual skills:
const constructors for widgets that don't depend on mutable state — non-const widgets rebuild on every parent rebuild, causing unnecessary repaints and dropped frames.build() — async calls in build() fire on every rebuild, causing duplicate network requests, race conditions, and unpredictable UI state.setState for shared state that spans multiple widgets — setState only rebuilds the local widget subtree; shared state must be lifted to a state management layer.! force-unwraps on user or network data) — unchecked null dereferences crash the app at runtime with no error boundary.| Anti-Pattern | Why It Fails | Correct Approach |
| ---------------------------------- | --------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| Non-const stateless widgets | Rebuilt on every parent setState; wastes frame budget | Add const to all stateless widget constructors and their instantiation |
| Calling Future in build() | Re-fires on every rebuild; duplicates API calls and causes flickering | Use FutureBuilder with a stored Future field initialized in initState |
| Business logic in widgets | Untestable; coupled to widget lifecycle; duplicated across screens | Move logic to BLoC/Cubit or Riverpod providers; widgets observe state only |
| setState for cross-widget state | Only rebuilds local subtree; sibling widgets stay stale | Use InheritedWidget, Provider, or BLoC streams for shared state |
| Force-unwrapping nullable API data | Runtime null crash with no recovery path | Use null-aware operators (?., ??) and handle null states explicitly in UI |
Before starting:
cat .claude/context/memory/learnings.md
After completing: Record any new patterns or exceptions discovered.
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.
tools
Comprehensive biosignal processing toolkit for analyzing physiological data including ECG, EEG, EDA, RSP, PPG, EMG, and EOG signals. Use this skill when processing cardiovascular signals, brain activity, electrodermal responses, respiratory patterns, muscle activity, or eye movements. Applicable for heart rate variability analysis, event-related potentials, complexity measures, autonomic nervous system assessment, psychophysiology research, and multi-modal physiological signal integration.
tools
Comprehensive toolkit for creating, analyzing, and visualizing complex networks and graphs in Python. Use when working with network/graph data structures, analyzing relationships between entities, computing graph algorithms (shortest paths, centrality, clustering), detecting communities, generating synthetic networks, or visualizing network topologies. Applicable to social networks, biological networks, transportation systems, citation networks, and any domain involving pairwise relationships.
data-ai
Molecular featurization for ML (100+ featurizers). ECFP, MACCS, descriptors, pretrained models (ChemBERTa), convert SMILES to features, for QSAR and molecular ML.
development
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.