Skip to content

nphuoc1625/flutter_pluggable_modules

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flutter_pluggable_modules

Design isolated, scalable, testable, abstract feature modules using clean architecture principles that able to work with different implementations

Architecture Overview

🏗️ Architecture Module

  • Clean Architecture (Presentation, Domain, Data layers)
  • SOLID principles implementation
  • Dependency Injection (GetIt, Provider)
  • State Management (Bloc, Riverpod, Provider)
  • Repository Pattern
  • Factory Pattern for object creation
  • Strategy Pattern for interchangeable behaviors
  • Observer Pattern for event handling

Feature Modules

  1. 🔐 AuthModule
  • Email/password, phone, social login
  • AuthRepository abstraction
  • Platform-native login (e.g. Google/Facebook via native SDKs)
  • Persist token/session
  • Auth state management
  • Token refresh mechanism
  1. 💳 PaymentModule
  • Payment gateway (e.g., Stripe, ZaloPay, Momo)
  • Native SDK integration (via platform channels or plugins)
  • Payment flow abstraction
  • Handle success/failure/cancel logic
  • Payment state management
  • Transaction history
  1. 🔔 NotificationModule (Optional)
  • Push notifications (Firebase Messaging)
  • Local notifications
  • Handle foreground, background, terminated
  • Notification preferences
  • Notification center
  1. 📄 ProfileModule
  • User settings
  • Upload avatar (camera/gallery)
  • Preferences and update profile API
  • Profile state management
  • User data caching
  1. 📦 CoreModule
  • Networking (Dio or Chopper)
  • Token interceptor
  • Error handling
  • App-wide constants/enums
  • Base classes and interfaces
  • Common widgets
  • Utility functions
  • Theme management
  • Localization
  • Analytics tracking

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published