SECURITY_FLUTTER.md Security
Secure token storage with flutter_secure_storage, biometric auth with local_auth, route guards, deep link validation, webview restrictions, screenshot prevention, code signing, certificate pinning, and app integrity checks.
When to use: Reference when implementing authentication flows, handling sensitive data on device, configuring network security, or preparing release builds with proper obfuscation and signing.
SCALABILITY_FLUTTER.md Scalability
State management scalability with Riverpod/Bloc, isolate-based processing, stream architectures, offline-first design, pagination with ListView.builder, image caching, and circuit breaker patterns for API resilience.
When to use: Reference when choosing state management, implementing background processing, designing data layers for offline support, or optimizing list performance for large datasets.
MAINTAINABILITY_FLUTTER.md Maintainability
Reusable widget extraction, single-responsibility widgets, typed failure classes, Result type patterns, widget and golden tests, integration tests, wrapper abstractions for third-party packages, and plugin health audits.
When to use: Reference during code review, when refactoring duplicated widget code, setting up testing strategy, adding new pub.dev dependencies, or defining error handling patterns.
UIUX_FLUTTER.md UI/UX
Optimistic UI with rollback, InkWell touch feedback, haptic feedback, shimmer loading states, empty and error state design, ThemeData as source of truth, spacing scales, dark mode, responsive layout, and platform adaptation.
When to use: Reference when building user interfaces, implementing loading and error states, setting up the app theme, adapting layouts for different screen sizes, or ensuring platform-appropriate behavior on iOS and Android.
AVAILABILITY_FLUTTER.md Availability
Repository pattern with local/remote data sources, crash recovery with FlutterError.onError, error boundary widgets, Android process death recovery with RestorationMixin, staged rollouts, forced update flows, and remote kill switches.
When to use: Reference when designing the data layer for reliability, implementing crash recovery, handling process death on Android, planning app store release strategies, or building forced update mechanisms.
ADAPTABILITY_FLUTTER.md Adaptability
ARB files with flutter_localizations, ICU plural and gender forms, dynamic locale switching, DateFormat and NumberFormat with intl, RTL support with EdgeInsetsDirectional, icon mirroring, dynamic font scaling, and locale-aware sorting.
When to use: Reference when adding localization support, formatting dates and currencies, building layouts that must support RTL languages, or implementing search and sorting for a multi-locale audience.
CLEAN_CODE_FLUTTER.md Clean Code
Widget naming by domain concept, build method discipline, no side effects in build, enum over string constants, named parameters, no flag arguments, single-responsibility widgets, and method extraction for readability.
When to use: Reference during all Flutter code writing and review. These daily habits keep widget code readable and performant. Essential when building new widgets or refactoring existing ones.
ARCHITECTURAL_DESIGN_FLUTTER.md Architecture
Dependency injection with Riverpod/get_it, polymorphism with sealed classes, immutable models with freezed, repository pattern, layered architecture (presentation, application, domain, data), and feature-first module organization.
When to use: Reference when structuring a new Flutter project, defining module boundaries, choosing between DI approaches, or designing the data flow from API to UI through state management.
SOURCE_STRUCTURE_FLUTTER.md Structure
Widget file declaration order, trailing commas for clean diffs, build method placement, file length limits, feature-based project organization, one widget per file, barrel file usage, import ordering, and test mirroring conventions.
When to use: Reference when setting up a new Flutter project structure, establishing team conventions for file organization, or when a file has grown too large and needs to be split.
DOCUMENTATION_COMMENTS_FLUTTER.md Documentation
When to comment in Flutter (platform quirks, business logic, complex widget composition), avoiding redundant DartDoc, no commented-out widgets, no section banners, feature-level READMEs, and architecture decision records.
When to use: Reference when deciding whether a comment is necessary, during code review for comment quality, or when setting up documentation practices for a Flutter project.