[Skill idea] flutter-create-bottom-sheet-flow — scaffold a typed-result bottom sheet
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 45/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- dart
- Domain
- mobile-dev
Research direction
Start by reviewing the Navigation and Routing roadmap and the existing flutter-implement-imperative-navigation skill, then compare their structure with the proposed bottom-sheet flow. Done means a focused skill covering typed results, height management, dismissal and drag configuration, and caller-side wiring, with the referenced template structure supplied or documented.
Written by the indexing model from the issue text.
Description
Environment
- Language model: Claude Opus 4.7
- Agent harness: Claude Code
- Project type: Production Flutter app
Problem
Bottom sheets are one of the most common UX patterns in production Flutter apps, and one of the most frequently misimplemented:
- Wrong route type (
MaterialPageRouteinstead of a transparent route) - Missing typed result on close (forcing callers to
dynamic-cast) - Height management mistakes (
fitToContentvsheightFactor, max-height clamping) isDismissible/enableDrag/useSafeAreadefaults inconsistent across the app
The current Navigation/Routing roadmap has flutter-implement-imperative-navigation (P1) and flutter-setup-declarative-routing (published), but no skill addresses the bottom-sheet flow specifically.
Proposed skill
Name: flutter-create-bottom-sheet-flow
Description (draft):
Scaffold a bottom sheet route with typed
popresult, height management (fitToContentvs fractional height), and dismissible/drag configuration. Use when adding a modal flow that returns data to its caller, such as a confirmation, picker, or detail panel.
Decisions the skill captures:
- Typed
Resultclass vs nullable return fitToContent(max 70% height recommended) vs fixedheightFactorisDismissible+enableDragpolicy- Caller-side wiring (how the parent ViewModel triggers and consumes the result)
Why a dedicated skill
Bottom sheets sit at the intersection of routing + UI + state contract. A general "navigation" skill won't cover the result-typing and height-management decisions specific to sheets. Doing it as a separate skill keeps both skills small and focused.
Real-world reference
We maintain this as an internal skill and it eliminated a recurring class of "sheet pops dynamic, caller crashes" bugs. Happy to share the template structure.
Roadmap fit
Sits in the Navigation and Routing category alongside flutter-implement-imperative-navigation.
- Dominant language
- Dart
- Stars
- 3k
- Forks
- 180
- Avg merge
- 5d 29m
- Merged PRs (30d)
- 6
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from flutter/agent-plugins
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
flutter/agent-plugins#239 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
flutter/agent-plugins#233 ·
-
Linter
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
flutter/agent-plugins#165 ·
-
Documentation P2
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
flutter/agent-plugins#100 ·
-
Linter P2
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
flutter/agent-plugins#92 ·
All issues in flutter/agent-plugins
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
AOSSIE-Org/Ell-ena#332 ·
-
ui/ux
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
HemantKArya/BloomeeTunes#489 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AppFlowy-IO/appflowy-editor#1241 ·
-
error Open
Difficulty 1/5 Under an hour Newbie friendliness 85/100