Flutter Mobile App¶
The PharmaNet mobile app is a cross-platform application built with Flutter 3.x and Dart. It serves two user roles: customers browsing and ordering medications, and pharmacists managing their pharmacy operations on the go.
App Identity¶
| Property | Value |
|---|---|
| Package | pharmanet |
| Version | 1.9.5+31 |
| SDK Constraint | Dart ^3.9.2, Flutter >3.41.0 |
| State Management | Riverpod ^3.2.1 |
| Backend | supabase_flutter ^2.12.0 |
| Platforms | Android, iOS, Web, Linux, macOS, Windows |
Key Features¶
| Feature | Customer | Pharmacist |
|---|---|---|
| Browse & Search Products | ✓ | — |
| Nearby Pharmacy Map | ✓ | — |
| Place & Track Orders | ✓ | ✓ (process) |
| In-App Chat | ✓ | ✓ |
| Product Reviews | ✓ | — |
| Wishlist | ✓ | — |
| Promotion Discounts | ✓ | ✓ (create offers) |
| Push Notifications | ✓ | ✓ |
| Dashboard & Analytics | — | ✓ |
| Inventory Management | — | ✓ |
| Featured Products | — | ✓ (pay to boost) |
| Subscription Management | — | ✓ |
Project Structure¶
lib/
├── main.dart # Entry point, providers, routing
├── firebase_options.dart # Firebase config
├── core/
│ ├── api/ # 20 API classes
│ ├── config/ # App & payment config
│ ├── constants/ # Colors, strings, constants
│ ├── enums/ # UserRole enum
│ ├── models/ # 14 freezed models
│ ├── providers/ # 25 Riverpod providers
│ ├── routes/ # Named route definitions
│ ├── services/ # 12 service classes
│ ├── theme/ # Light/dark theme
│ └── utils/ # Helpers, validators
├── features/
│ ├── auth/ # Auth pages & widgets
│ ├── cart/ # Cart & checkout
│ ├── onboarding/ # Onboarding flow
│ ├── orders/ # Order management
│ ├── pharmacist/ # Seller dashboard
│ ├── pharmacy/ # Catalog & detail
│ ├── profile/ # User profile & settings
│ └── public/ # Home, notifications
├── widgets/ # Shared widgets
└── l10n/ # Localization (EN + AM)
Sections¶
| Section | Description |
|---|---|
| Getting Started | Setup, prerequisites, running the app |
| Architecture | Code structure, Riverpod, routing deep-dive |
| Features | Detailed feature documentation with code references |
| Models | All data models with field-level documentation |
| Providers | All Riverpod providers with state flow |
Source Code¶
Source: pharmanet/lib/