Skip to content

Dive into the world of Flutter with our Quran app โ€“ a meticulously crafted learning journey that encapsulates essential Flutter concepts. ๐ŸŒŸ

Notifications You must be signed in to change notification settings

abualgait/HafizApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

60 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Hafiz Flutter App

image

๐Ÿš€ Embark on a Flutter Journey with Holy Quran App ๐Ÿ“–

Dive into the world of Flutter with our Hafiz app โ€“ a meticulously crafted learning journey that encapsulates essential Flutter concepts. ๐ŸŒŸ

Google Play: https://play.google.com/store/apps/details?id=com.hafiz.app.hafiz_app&hl=en_US

๐Ÿ›  Tech Stack Highlights:

  1. Clean Architecture: We've architectured the app for clarity, separation of concerns, and maintainability. Clean code is at the heart of our design, ensuring scalability and ease of collaboration.

  2. App Theme Styling: Immerse yourself in a visually appealing app theme that not only enhances the user experience but also demonstrates the power of Flutter's theming capabilities.

  3. Localization Magic: Explore the beauty of multilingual support with our app's localization feature. Providing a seamless experience for users worldwide, we've harnessed the power of Flutter to make the Quran accessible in multiple languages.

  4. Dio Integration: Witness the power of network requests with Dio integration. Our app leverages Dio for efficient and robust API interactions, ensuring a smooth and responsive experience.

  5. Bloc State Management: Delve into the world of BLoC (Business Logic Component) for clean and efficient state management. Experience the power of reactive programming to streamline your app's logic.

  6. Navigation Mastery: Navigate effortlessly through the app using Flutter's navigation system. Enjoy a smooth and intuitive user experience as you traverse through different screens.

  7. SharedPreferences Magic: Store and retrieve data persistently with SharedPreferences. Our app leverages this powerful tool for efficient local data storage, enhancing the user experience.

  8. GetIt Dependency Injection: Experience the simplicity and power of dependency injection with GetIt. Our app utilizes GetIt for efficient management of dependencies, ensuring modularity and testability.

  9. Unit testing: with mocktail, flutter_test and bloc_test.

Figma file: https://www.figma.com/community/file/1237733090712918938/quran-mobile-app

๐ŸŒ Sharing the Flutter Love: This Quran app is not just an app โ€“ it's a learning journey! ๐Ÿš€ I have crafted it to serve as a starter template for Flutter enthusiasts, enabling them to explore and understand the core concepts of Flutter development.

Let's Flutter together and create remarkable experiences! ๐Ÿš€โœจ

Acknowledgements

This build includes small fixes and updates by the current maintainer. The app is nonโ€‘profit and intended as a good deed for us and our families.

Quran Text Source & Integrity

  • The Arabic Quran text is bundled locally in the app to avoid tampering and to work fully offline.
  • Local files live under assets/quran/uthmani/ as perโ€‘surah JSON: surah_<1..114>.json.
  • Each file uses this schema:
{
  "chapter": [
    {"chapter": 1, "verse": 1, "text": "..."},
    {"chapter": 1, "verse": 2, "text": "..."}
  ]
}
  • A remote fallback (Quran.com API v4) is only used if a local file is missing.

Preparing Local Assets (Tanzil)

  1. Download the verified Uthmani text from Tanzil: https://tanzil.net/download/
    • e.g., quran-uthmani.txt where each line is SURA|AYA|TEXT (e.g., 1|1|ุจูุณู’ู…ู ุงู„ู„ู‘ูŽู‡ู ...).
  2. Generate perโ€‘surah JSON files:
    • dart run tool/generate_quran_assets.dart /path/to/quran-uthmani.txt assets/quran/uthmani
  3. Ensure pubspec.yaml includes the assets/ directory (already configured).

Note: Tanzilโ€™s license is CC BYโ€‘ND 3.0. Do not modify the Quran text. Include attribution when distributing.

About Screen

An inโ€‘app About page includes acknowledgements and intent. You can find it via the info icon on the Home screen.

About

Dive into the world of Flutter with our Quran app โ€“ a meticulously crafted learning journey that encapsulates essential Flutter concepts. ๐ŸŒŸ

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •