A comprehensive community management Flutter application for Hatemi Mohalla, Rajkot, featuring FMB (Food Management Board), Miqaat events, Namaz timings, announcements, and user management.
- Daily Thali Menu: View today's menu and weekly schedule
- Thali Registration: Register users for thali service
- Payment Tracking: Track takhmeen (estimates), paid amounts, and pending payments
- My Thali: Users can view their personal thali details, payment status, and registration period
- Thali Reviews: Users can rate and review daily thali
- Admin Management: Add, edit, and manage daily menus and registrations
- Event Creation: Add new miqaat events with dates, locations, and descriptions
- Event Management: Edit or delete existing miqaats
- Upcoming Events: View all upcoming miqaats on home screen
- Detailed View: See full event details including location and description
- Daily Prayer Times: Display Fajr, Zuhr, and Maghrib timings
- Current Prayer: Highlight the current prayer time
- Next Prayer: Show upcoming prayer with countdown
- Admin Edit: Authorized users can update prayer timings
- Community Updates: Post important announcements for the community
- Rich Content: Add titles, descriptions, and priority levels
- Admin Management: Create, edit, and delete announcements
- Home Screen Display: Latest announcements visible on main screen
- Multi-Role System: Support for admin, FMB, and deeniyah roles
- Role Assignment: Admins can assign/remove roles from users
- User Directory: View all registered users
- Profile Management: Users can view and manage their profiles
- Glassmorphism UI: Modern, elegant glass-effect design
- Golden Theme: Consistent golden (#D4AF37) and brown (#8B4513) color scheme
- Smooth Animations: Custom dropdown animations and transitions
- Responsive Layout: Optimized for various screen sizes
- Horizontal Scrolling: Swipeable cards for better UX
- Framework: Flutter 3.x
- Language: Dart
- Backend: Firebase
- Authentication
- Cloud Firestore
- Cloud Messaging (FCM)
- State Management: StatefulWidget
- UI Components: Custom glassmorphism widgets
lib/
├── models/ # Data models
│ ├── announcement_model.dart
│ ├── fmb_menu_model.dart
│ ├── miqaat_model.dart
│ ├── namaz_model.dart
│ ├── thali_registration_model.dart
│ └── thali_review_model.dart
├── screens/ # UI screens
│ ├── home_screen.dart
│ ├── admin_screen.dart
│ ├── fmb_menu_screen.dart
│ ├── my_thali_screen.dart
│ ├── miqaat_screen.dart
│ ├── announcements_screen.dart
│ └── ...
├── services/ # Business logic
│ ├── auth_service.dart
│ ├── firestore_service.dart
│ ├── fmb_service.dart
│ ├── thali_registration_service.dart
│ └── ...
├── widgets/ # Reusable widgets
│ ├── glass_card.dart
│ ├── today_menu_card.dart
│ └── ...
└── main.dart # App entry point
- Flutter SDK (3.0 or higher)
- Android Studio / VS Code
- Firebase account
-
Clone the repository
git clone https://github.com/yourusername/hatemi_mohalla.git cd hatemi_mohalla -
Install dependencies
flutter pub get
-
Firebase Configuration
- Create a new Firebase project
- Add Android/iOS apps to your Firebase project
- Download
google-services.json(Android) and place inandroid/app/ - Download
GoogleService-Info.plist(iOS) and place inios/Runner/ - Enable Authentication (Email/Password)
- Create Firestore database
- Set up Firestore security rules (see
firestore_rules_fmb.txt)
-
Run the app
flutter run
- Keystore is already configured in
android/key.properties - Build the APK:
flutter build apk --release
- Find the APK at:
build/app/outputs/flutter-apk/app-release.apk
flutter build appbundle --releaseuid: User IDemail: User emaildisplayName: User nameroles: Array of roles (admin, fmb, deeniyah)thaliRegistered: Boolean flag
userId: Reference to useruserName: User nametakhmeenRaqam: Estimated amountpaidAmount: Amount paidpendingAmount: Calculated pendingstatus: active/stopped/holdfromMonth: Start datetoMonth: End date
date: Menu datemenu: Map of items and quantitiescreatedBy: Admin who created
title: Event titledate: Event datelocation: Event locationdescription: Event details
title: Announcement titledescription: Contentpriority: high/medium/lowcreatedAt: Timestamp
- Admin: Full access to all features
- FMB: Manage thali menus, registrations, and reviews
- Deeniyah: Manage miqaats and namaz timings
- Firestore security rules enforce role-based access
- Keystore file is excluded from version control
- Sensitive configuration in
.gitignore
- Version: 1.0.0
- Build: 1
This project is proprietary software for Hatemi Mohalla community.
For support or queries, contact the development team.
Built with ❤️ for Hatemi Mohalla Community