Masjid Finder
Islamic Companion
Masjid Finder is a cross-platform mobile application built using Flutter, designed as a comprehensive Islamic companion tool. The application helps users locate nearby mosques, track accurate prayer times, determine Qibla direction, and access various Islamic resources within a single platform.
To unify multiple daily-use Islamic utilities into one reliable and well-structured application.



Problem Statement
Fragmented User Experience
Muslims often rely on multiple applications to perform daily religious activities such as checking prayer times, finding nearby mosques, determining Qibla direction, and accessing Islamic content. This leads to fragmented user experience and inconsistent data across different platforms. There is a need for a single, integrated application that provides all essential features in a reliable, efficient, and user-friendly manner.
Proposed Solution
Unified Mobile Application
The solution was to develop a unified mobile application that combines mosque discovery, prayer time calculation, Qibla navigation, and Islamic content into one system. The application leverages device location, mapping services, and offline storage to provide accurate and accessible information to users.
Clean Architecture
Built using Flutter with a feature-first clean architecture approach.
State Management
Uses Riverpod for scalable state management with a reactive and testable architecture. Implements notifier-based architecture for clean separation of logic without dependency on BuildContext.
Two Main Layers
Organized into a Core Layer containing shared services (network, storage, location), themes, constants, and utilities; alongside a Feature Layer containing independent modules like masjid, prayer times, qibla, etc.
Backend & Routing
Cloud Firestore is used to store masjid data with real-time updates for mosque information. GoRouter is used for structured navigation.
Core Features
Mosque Finder
Displays nearby mosques using Google Maps. Uses device location for accurate results. Supports geographic navigation.
Prayer Times & Qibla
Calculates prayer times using standard Islamic calculation methods and displays next prayer countdown. Provides real-time Qibla direction using device sensors and compass-based navigation.
Islamic Content
Includes Quran, Azkar, Dua, and 99 Names of Allah. Provides educational and devotional resources.
Notifications & Offline
Local notifications for prayer reminders with customizable settings. Stores essential data locally using Hive to work in low or no internet conditions.
speed Performance & Stability
- check_circle
Efficient state updates using Riverpod and reduced unnecessary rebuilds. Optimized map rendering and location updates.
- check_circle
Structured error handling using custom exception classes, network failure handling, and fallback mechanisms. Stable state transitions to prevent crashes.
Challenges Faced
Integrating multiple complex features into a single app, handling accurate prayer time calculations, managing device sensors for Qibla direction, implementing offline-first architecture, and maintaining performance with multiple modules.
Future Improvements
Add cloud sync for user preferences, enhance personalization features, improve global mosque database, and add advanced analytics.
Tech Stack & Tools
Your Role & Contribution
Mobile Architecture Lead
Built the application independently from scratch. Designed and implemented complete architecture. Developed all core features including: Mosque finder, Prayer times system, Qibla compass, and Islamic content modules. Integrated Firebase and location services. Implemented offline support using local storage. Optimized performance and ensured app stability.