Flutter Performance Guru

Optimize Flutter UI performance by eliminating frame drops and jank.

Updated Aug 11, 2025
One-click install
npx skills add https://github.com/NinaVerde/ninaverde_app --skill flutter-performance-guru
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Flutter Performance Guru
Source: https://github.com/NinaVerde/ninaverde_app/tree/main/.agent/skills/flutter-performance-guru
Command: npx skills add https://github.com/NinaVerde/ninaverde_app --skill flutter-performance-guru

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Flutter apps often suffer from jank and frame drops, resulting in choppy UI experiences. This Skill provides a clear, actionable approach to maintain smooth performance and high frame rates across typical app scenarios.

Core Features & Use Cases

  • Const Constructors: Use const everywhere possible to reduce garbage collection pressure.
  • Build Method Hygiene: No logic in build(), no http calls in build(), and move heavy calculations to provider or initState.
  • List Optimization: Always use ListView.builder for long lists; use itemExtent or prototypeItem when possible.
  • Image Handling: Cache images and resize server-side or via an image provider to save layout and rendering costs.
  • Repaint Boundary: Wrap complex animations in RepaintBoundary to avoid repainting the entire screen.

Use Case: A scrolling feed with hundreds of items. Apply the checklist to reduce jank and achieve smoother scrolling.

Quick Start

Enable the 60/120 FPS protocol in your Flutter project, run a profile session using flutter run --profile, and apply the performance checklist to achieve smoother UI.

Frequently Asked Questions about Flutter Performance Guru

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix Flutter jank and frame drops in a scrolling feed?

To fix Flutter jank and frame drops in scrolling feeds, apply ListView.builder for long lists, use const constructors, and wrap complex animations in RepaintBoundary. These optimizations reduce garbage collection pressure and prevent full screen repaints.

Why does my Flutter app have choppy UI during complex animations?

Choppy UI during complex animations in Flutter often occurs because the entire screen repaints unnecessarily. Wrap complex animations in RepaintBoundary to isolate the painting region and maintain smooth frame rates.

How do I optimize Flutter build methods to improve UI smoothness?

Optimize Flutter build methods by removing all logic and HTTP calls from the build() function. Move heavy calculations to providers or initState, and use const constructors everywhere possible to reduce garbage collection pressure.

What is the best way to handle image rendering costs in Flutter?

The best way to handle image rendering costs in Flutter is to cache images and resize them server-side or via an image provider. This approach saves layout and rendering costs, preventing frame drops.

How do I profile a Flutter app to identify UI performance issues?

To profile a Flutter app for UI performance issues, run a profile session using the command flutter run --profile. Apply a performance checklist during this session to identify and eliminate frame drops.

Does Flutter ListView.builder require itemExtent for list optimization?

Flutter ListView.builder does not strictly require itemExtent for list optimization, but using itemExtent or prototypeItem when possible significantly improves scrolling performance by reducing layout calculations.