π§ This project is currently under active development. Features and UI are subject to change.
A comprehensive mobile companion app for Umrah & Hajj pilgrims, powered by the Haramain Tour backend.
HaramainQu is a mobile application designed to accompany pilgrims throughout their Umrah and Hajj journey in the Holy Land. It provides step-by-step ibadah guidance, progress tracking, doa collections, and practical tools β all in one app.
HaramainQu connects to the Haramain Tour Laravel backend via REST API, authenticated using token-based auth with Laravel Sanctum.
| Module | Description |
|---|---|
| π Auth | Login, logout, and splash screen session management |
| π Home | Main dashboard with pilgrimage summary and info |
| π Panduan Ibadah | Step-by-step Umrah & Hajj ritual instructions |
| β Progress Ibadah | Checklist to track completed rukun of Umrah/Hajj |
| π’ Tracking Ibadah | Counter to track Thawaf, Sa'i rounds, and other rituals |
| π€² Doa & Dzikir | Collection of essential prayers and daily dhikr |
| π Kamus Arab | Mini Arabic dictionary for practical pilgrim communication |
| β° Reminder | Notifications for ibadah schedules and trip agenda |
| π€ Profile | Pilgrim profile management and account settings |
| π° Berita | Latest news and updates from Haramain Tour |
| Category | Technology |
|---|---|
| Framework | Flutter |
| State Management | flutter_riverpod |
| Navigation | go_router (with deep linking support) |
| HTTP Client | dio (with token interceptor) |
| Local Storage | shared_preferences + Hive (NoSQL local DB) |
| Fonts | google_fonts |
| Animations | lottie, flutter_animate, shimmer |
| Backend | Haramain Tour (Laravel 11 + REST API) |
This project follows a Feature-First Clean Architecture approach, separating code by feature for scalability and maintainability.
lib/
βββ core/ # Global utilities & services
β βββ api_service.dart # Dio HTTP client with auth interceptor
β βββ theme/ # App theme & design tokens
β βββ constants/ # App-wide constants
β βββ services/ # Notification & storage services
β
βββ features/ # Feature modules (UI + Business Logic)
β βββ auth/ # Login, logout, splash screen
β βββ home/ # Main dashboard
β βββ panduan_ibadah/ # Ibadah step-by-step guide
β βββ progress_ibadah/ # Rukun checklist tracker
β βββ tracking_ibadah/ # Thawaf/Sa'i counter
β βββ doa_dzikir/ # Prayers & dhikr collection
β βββ kamus_arab/ # Arabic dictionary
β βββ reminder/ # Schedule reminders
β βββ profile/ # User profile & settings
β
βββ data/ # Data models & sources
βββ models/ # Data models
βββ repositories/ # Local & remote data sources
HaramainQu (Flutter Mobile App)
β REST API (Dio + Token Interceptor)
Haramain Tour (Laravel 11 Backend)
β Query
MySQL Database
Authentication is handled via Laravel Sanctum token-based auth. The token is stored locally using
shared_preferencesand automatically attached to every API request via a Dio interceptor.
- Flutter SDK >= 3.x
- Dart >= 3.x
- Android Studio / VS Code
- Android Emulator or physical device
# 1. Clone the repository
git clone https://github.com/JunichiGetCode/haramainqu.git
cd haramainqu
# 2. Install dependencies
flutter pub get
# 3. Configure API base URL
# Open lib/core/constants/ and set your Haramain Tour backend URL
# 4. Run the app
flutter runπ§ This app is currently under active development. Screenshots will be added upon release.
This app is the mobile frontend for the Haramain Tour web platform.
π Haramain Tour β Laravel Backend
Pull requests are welcome! For major changes, please open an issue first to discuss what you'd like to change.
This project is licensed under the MIT License.