πŸš€ Jet Framework

Jet is a lightweight, modular Flutter framework for scalable app architecture, providing dependency injection, lifecycle management, and streamlined setup for rapid development. Built with Riverpod 3 for enhanced state management and code generation capabilities.

πŸ“¦ Installation

Add Jet to your Flutter project:

dependencies:
  jet: ^0.0.3-alpha.2

πŸš€ Quick Start

  1. Create your app configuration:
import 'package:jet/jet.dart';

class AppConfig extends JetConfig {
  @override
  List<JetAdapter> get adapters => [RouterAdapter()];

  @override
  List<LocaleInfo> get supportedLocales => [
    LocaleInfo(locale: const Locale('en'), displayName: 'English', nativeName: 'English'),
  ];
}
  1. Set up main.dart:
import 'package:jet/jet.dart';
import 'core/config/app_config.dart';

void main() async {
  final config = AppConfig();
  Jet.fly(
    setup: () => Boot.start(config),
    setupFinished: (jet) => Boot.finished(jet, config),
  );
}

🎯 Key Features

  • πŸš€ Rapid Development - Get started in minutes with comprehensive setup
  • πŸ“± Modern Architecture - Built on Riverpod 3 with code generation support
  • πŸ”§ Type Safety - Full type safety across forms, networking, and state management
  • 🌐 Internationalization - Built-in localization with RTL support
  • 🎨 Theming - Complete theme management with persistent storage
  • πŸ” Security - App locking with biometric authentication
  • πŸ“ Forms - Advanced form management with validation and error handling
  • 🌐 Networking - Type-safe HTTP client with configurable logging
  • πŸ’Ύ Storage - Secure storage for sensitive data and regular preferences
  • πŸ”„ State Management - Unified state widgets with automatic loading/error states
  • πŸ”” Notifications - Cross-platform local notifications with scheduling and management
  • πŸ› Debugging - Enhanced debugging tools with stack trace formatting
  • πŸ” Sessions - Built-in authentication and session management
  • 🧩 Components - Pre-built UI components for common patterns

πŸ“š Documentation

For complete documentation, visit our GitHub repository.

🀝 Contributing

We welcome contributions! Please see our contributing guidelines for details.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

Libraries

adapters/adapters
adapters/jet_adapter
adapters/notifications_adapter
adapters/storage_adapter
bootstrap/boot
config/jet_config
extensions/build_context
extensions/data_time
extensions/text_extensions
forms/common
forms/forms
Jet Forms Module
forms/inputs/inputs
forms/inputs/jet_password_field
forms/inputs/jet_phone_field
forms/inputs/jet_pin_field
forms/mixins/form_error_handling_mixin
forms/mixins/form_lifecycle_mixin
forms/mixins/form_validation_mixin
forms/mixins/mixins
forms/notifiers/jet_form_notifier
forms/notifiers/notifiers
Barrel export file for form notifiers
forms/widgets/jet_form_builder
forms/widgets/widgets
Barrel export file for form widgets
helpers/helpers
helpers/jet_faker
helpers/jet_logger
jet
jet_framework
localization/i10n
localization/intl/messages
localization/intl/messages_ar
localization/intl/messages_en
localization/models/locale_info
localization/notifiers/language_switcher_notifier
localization/widgets/base_language_switcher
localization/widgets/language_switcher
networking/errors/errors
networking/errors/jet_base_error_handler
networking/errors/jet_error
networking/errors/jet_error_handler
networking/interceptors/jet_bearer_token_interceptor
networking/interceptors/jet_dio_logger_config
networking/interceptors/jet_dio_logger_interceptor
networking/jet_api
networking/networking
notifications/jet_notifications
notifications/notifications
Jet Notifications Module
resources/components/components
resources/components/jet_empty_widget
resources/components/jet_error_widget
resources/components/jet_fetch_more_error_widget
resources/components/jet_loader
resources/components/jet_loading_more_widget
resources/components/jet_no_more_items_widget
resources/components/tabs/jet_tab
resources/state
resources/state/jet_builder
resources/state/jet_consumer
resources/state/jet_paginator
resources/state/models
Data models for Jet state management
resources/theme/notifiers/theme_switcher_notifier
resources/theme/widgets/base_theme_switcher
resources/theme/widgets/bottom_sheet_theme_switcher
resources/theme/widgets/segmented_button_theme_switcher
resources/theme/widgets/theme_switcher
resources/theme/widgets/toggle_button_switcher
router/jet_router
router/router_provider
security/app_locker/app_locker_notifier
session/auth_provider
session/session
session/session_manager
storage/local_storage
storage/model
widgets/main/jet_app
widgets/widgets
widgets/widgets/buttons/jet_button
widgets/widgets/buttons/jet_cupertino_button
widgets/widgets/dialogs/show_adaptive_confirmation_dialog
widgets/widgets/dialogs/show_adaptive_simple_dialog
widgets/widgets/navigation/jet_navigation_hub
widgets/widgets/sheets/show_confirmation_sheet