Flutter App Essentials

Flutter App Essentials is a comprehensive package that aims to accelerate app development by providing essential features and utilities. It includes authentication management, API integration, exception handling, and more. With Flutter Fast App, developers can jumpstart their projects and focus on building great user experiences.

Features

  • Auth Repository: A repository for managing user authentication, including sign-in, sign-up, password reset, and user profile management.
  • User Manager: A utility for managing user-related data and interactions, such as user preferences, profile updates, and access control.
  • Token Manager: A secure token management system for handling user authentication tokens and refreshing expired tokens.
  • API Layers: Abstracted layers for handling API requests and responses, including authentication headers and error handling.
  • Concise main.dart File: A streamlined main.dart file with boilerplate code, app initialization, and routing setup.
  • Authentication Logic: Pre-implemented authentication logic for handling login, registration, session management, and user state.
  • Exception Handler: A centralized exception handling mechanism for catching and handling errors in a unified way.
  • Snackbar Handler: A utility for displaying snackbars and toast messages, providing a consistent user feedback mechanism.

Installation

To use App Essentials in your Flutter project, add the following dependency to your pubspec.yaml file:

dependencies:
  app_essentials: ^1.0.0

Getting started

TODO: List prerequisites and provide or point to information on how to start using the package.

Usage


import 'package:flutter/material.dart';
import 'package:app_essentials/app_essentials.dart';

void main() {
  AppEssentials().main();
}

Contribution

Contributions are welcome! If you find any issues or have suggestions for improvement, please create a new issue or submit a pull request on the GitHub repository.

License

This project is licensed under the MIT License.

Libraries

app/data/api_services/auth_service
app/data/config/api_constants
app/data/config/app_configuration
app/data/config/asset_constants
app/data/model/change_password/change_password_request_model
app/data/model/resend_otp/resend_otp_request_model
app/data/model/reset_password/reset_pass_request_model
app/data/model/sign_in/sign_in_request_model
app/data/model/sign_up/sign_in_request_model
app/data/model/sign_up/sign_up_response_model
app/data/model/user_model
app/data/model/verify_otp/verify_otp_request_model
app/data/model/verify_otp/verify_otp_response_model
app/data/repositories/auth_repository
app/modules/auth/create_password/bindings/create_password_binding
app/modules/auth/create_password/controllers/create_password_controller
app/modules/auth/create_password/views/create_password_view
app/modules/auth/forget_passsword/bindings/forget_passsword_binding
app/modules/auth/forget_passsword/controllers/forget_passsword_controller
app/modules/auth/forget_passsword/views/forget_passsword_view
app/modules/auth/onboarding/bindings/onboarding_binding
app/modules/auth/onboarding/controllers/onboarding_controller
app/modules/auth/onboarding/views/onboarding_view
app/modules/auth/sign_in/bindings/sign_in_binding
app/modules/auth/sign_in/controllers/sign_in_controller
app/modules/auth/sign_in/views/sign_in_view
app/modules/auth/sign_up/bindings/sign_up_binding
app/modules/auth/sign_up/controllers/post_sign_up_controller
app/modules/auth/sign_up/controllers/sign_up_controller
app/modules/auth/sign_up/views/post_sign_up_view
app/modules/auth/sign_up/views/sign_up_view
app/modules/auth/verify_otp/bindings/verify_otp_binding
app/modules/auth/verify_otp/controllers/verify_otp_controller
app/modules/auth/verify_otp/views/verify_otp_view
app/modules/home/bindings/home_binding
app/modules/home/controllers/home_controller
app/modules/home/views/home_view
app/modules/splash/bindings/splash_binding
app/modules/splash/controllers/splash_controller
app/modules/splash/views/splash_view
app/routes/app_pages
app_essentials
core/api/interceptor/api_interceptor
core/api/parser/response_parser
core/api_builder/dio_builder
core/env/env_setup
core/interfaces/api_services/auth_api_service
core/interfaces/repositories/auth_repository
core/interfaces/repositories/token_respository
core/interfaces/repositories/user_repository
core/model/base_response_model
core/model/enums/response_status
core/model/env/env_model
core/model/repository_response_model
services/app_service
services/exception_handler
services/snackbar_manager
services/token_manager
services/user_manager
services/validator_service
theme/app_theme
utils/image_util
utils/utils
widgets/base_widget
widgets/custom_dropdown_field
widgets/custom_expandable_appbar
widgets/custom_phone_field
widgets/custom_pin_code_field
widgets/custom_text_form_field
widgets/loading_widget
widgets/pagination_list_widget
widgets/primary_button
widgets/shimmers