بنقرة واحدة
flight_booking
يحتوي flight_booking على 6 من skills المجمعة من VB10، مع تغطية مهنية على مستوى المستودع وصفحات skill داخل الموقع.
Skills في هذا المستودع
Adds a new model to the cache as a pure DTO — a json_serializable + Equatable class that implements CacheModel (toJson) and provides a fromJson factory. No Hive annotations, no typeId, no adapters (Hive is encapsulated in the cache_manager package and stores models as JSON). Store/read via ICacheManager.writeModel / readModel(fromJson). Use when the user runs /cache-add-model or asks to store/cache a new model.
Sets up the model-capable cache architecture from scratch: a local `module/cache_manager` package with ICacheManager + ICacheStrategy backed by Hive (fully encapsulated — the app imports no Hive). Models are stored as JSON via a CacheModel contract (toJson) + a fromJson factory, so no Hive adapters/typeId. A SEPARATE standalone IFallbackStore (SharedPreferences) lives outside the strategy and holds only a few critical keys (auth token). Includes app wiring (ProductCache holder, keys, DI) and an AuthSessionCacheModel DTO example. Use when the user runs /cache-setup or asks to add a cache manager / storage abstraction to the project.
Adds a new typed route to the existing go_router navigation architecture. Takes a page name and path, creates a GoRouteData class in app_routes.dart, runs build_runner to regenerate app_routes.g.dart, and optionally updates auth_guard.dart if the route is public. Use when user runs /route-add or asks to add a new screen/route to the navigation.
Sets up go_router + go_router_builder navigation infrastructure from scratch. Creates AuthCubit (session management), AuthInterceptor (401 auto-logout), GoRouterRefreshStream, auth guard, typed route definitions, and AppRouter. Wires everything into ProductContainer and converts MaterialApp to MaterialApp.router. Use when user runs /route-setup or asks to add go_router navigation to the project.
Adds or refactors a Flutter feature screen using Cubit (flutter_bloc), Equatable states with copyWith, BlocSelector for single-field listening, BlocBuilder/BlocListener, StatefulWidget + PageMixin for shared controllers, and ValueListenableBuilder for widget-local UI without setState. Registers services via ProductContainer (get_it). Use when the user runs /cubit-add, asks for Cubit + mixin + ValueListenable pattern, or points to docs/prompt/flutter_cubit_feature_prompt.md.
Resolves theme-related tasks in the Flight Booking Flutter app. Use when changing colors, padding, radius, text styles, theme extension, or when the user asks about theme, design system, AppTheme, AppColors, AppPadding, AppRadius, context.appTheme, or MaterialApp theme.