Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hatemi Mohalla App

A comprehensive community management Flutter application for Hatemi Mohalla, Rajkot, featuring FMB (Food Management Board), Miqaat events, Namaz timings, announcements, and user management.

Features

🍽️ FMB (Food Management Board)

  • 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

📅 Miqaat Management

  • 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

🕌 Namaz Timings

  • 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

📢 Announcements

  • 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

👥 User Management

  • 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

🎨 Design

  • 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

Tech Stack

  • Framework: Flutter 3.x
  • Language: Dart
  • Backend: Firebase
    • Authentication
    • Cloud Firestore
    • Cloud Messaging (FCM)
  • State Management: StatefulWidget
  • UI Components: Custom glassmorphism widgets

Project Structure

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

Installation

Prerequisites

  • Flutter SDK (3.0 or higher)
  • Android Studio / VS Code
  • Firebase account

Setup

  1. Clone the repository

    git clone https://github.com/yourusername/hatemi_mohalla.git
    cd hatemi_mohalla
  2. Install dependencies

    flutter pub get
  3. Firebase Configuration

    • Create a new Firebase project
    • Add Android/iOS apps to your Firebase project
    • Download google-services.json (Android) and place in android/app/
    • Download GoogleService-Info.plist (iOS) and place in ios/Runner/
    • Enable Authentication (Email/Password)
    • Create Firestore database
    • Set up Firestore security rules (see firestore_rules_fmb.txt)
  4. Run the app

    flutter run

Building Release APK

Generate Signed APK

  1. Keystore is already configured in android/key.properties
  2. Build the APK:
    flutter build apk --release
  3. Find the APK at: build/app/outputs/flutter-apk/app-release.apk

Build App Bundle (for Play Store)

flutter build appbundle --release

Firebase Collections

Users

  • uid: User ID
  • email: User email
  • displayName: User name
  • roles: Array of roles (admin, fmb, deeniyah)
  • thaliRegistered: Boolean flag

Thali Registrations

  • userId: Reference to user
  • userName: User name
  • takhmeenRaqam: Estimated amount
  • paidAmount: Amount paid
  • pendingAmount: Calculated pending
  • status: active/stopped/hold
  • fromMonth: Start date
  • toMonth: End date

FMB Menu

  • date: Menu date
  • menu: Map of items and quantities
  • createdBy: Admin who created

Miqaats

  • title: Event title
  • date: Event date
  • location: Event location
  • description: Event details

Announcements

  • title: Announcement title
  • description: Content
  • priority: high/medium/low
  • createdAt: Timestamp

User Roles

  • Admin: Full access to all features
  • FMB: Manage thali menus, registrations, and reviews
  • Deeniyah: Manage miqaats and namaz timings

Security

  • Firestore security rules enforce role-based access
  • Keystore file is excluded from version control
  • Sensitive configuration in .gitignore

Version

  • Version: 1.0.0
  • Build: 1

License

This project is proprietary software for Hatemi Mohalla community.

Contact

For support or queries, contact the development team.


Built with ❤️ for Hatemi Mohalla Community

About

A comprehensive community management application for Hatemi Mohalla, Rajkot, featuring FMB, Miqaat events, Namaz timings, announcements, and user management.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages