Setup
Prerequisites
| Tool | Version |
|---|---|
| Flutter SDK | 3.7.2+ |
| Dart | 3.0+ |
| Android Studio / Xcode | Latest |
| pnpm | 8+ |
Clone & Install
cd /Users/dhilshad/Metaonus/syncad-parents
flutter pub get
Key Dependencies
| Package | Version | Purpose |
|---|---|---|
provider | ^6.1.5 | State management |
dio | ^5.8.0+1 | HTTP client |
get_it | ^8.0.3 | Dependency injection |
firebase_core | ^4.2.1 | Firebase initialization |
firebase_messaging | ^15.2.4 | Push notifications |
local_auth | ^2.3.0 | Biometrics (FaceID/Fingerprint) |
shared_preferences | ^2.5.3 | Token and settings storage |
google_fonts | ^6.3.2 | Typography |
flutter_screenutil | ^5.9.3 | Responsive sizing |
intl | ^0.20.2 | Date/number formatting |
Firebase Setup
# 1. Download google-services.json from Firebase Console
# 2. Place in android/app/google-services.json
# 3. Download GoogleService-Info.plist from Firebase Console
# 4. Place in ios/Runner/GoogleService-Info.plist
Build
# Android
flutter build apk --debug
# iOS
flutter build ios --debug
Run
flutter run
Environment
The app connects to https://dev-api.metaonus.in/parent/* in development. The API base URL is configured in lib/core/network/dio_client.dart.
Directory Structure
syncad-parents/lib/
├── main.dart
├── service_locator.dart # GetIt registrations
├── core/
│ ├── network/
│ │ └── dio_client.dart # Dio instance + interceptors
│ └── base/
│ └── base_provider.dart # BaseProvider mixin
├── modules/
│ ├── home/
│ ├── attendance/
│ ├── exam/
│ ├── fee/
│ ├── announcement/
│ ├── timetable/
│ ├── leave/
│ ├── event/
│ ├── teacher/
│ ├── message/
│ └── notification/
└── models/