/open-quran

The Holy Quran App

Primary LanguageDartMIT LicenseMIT





The Open Qur'an - Mobile App

A demonstration app for Flutter that targets iOS, Android and shows how it can give a fantastic cross-platform experience. The Open Qur'an App was carefully built by fabrikod team to take into account user expectations, input methods, and idioms for each platform, guaranteeing it is comfortable on all of them.

App Downloads

To try the app you can download it from the link below:

Installation

If you're new to Flutter the first thing you'll need is to follow the setup instructions.

Once Flutter is setup, you can use the latest stable channel:

  • Run flutter channel stable
  • Run flutter upgrade

Once you're on dev and desktop is enabled, you're ready to run the app:

  • flutter run -d windows
  • flutter run -d macos
  • flutter run -d linux
  • flutter run -d android
  • flutter run -d ios
  • flutter run -d web

If you re-start your IDE, you should also see a new launch option for your current desktop platform.

Run Project

1. Clone this repository to your local machine using:
  • https://github.com/Open-Quran/quran.git
2. Open the project in Android Studio or Visual Studio Code
3. Install the required dependencies by running:
  • flutter pub get
4. Add below lines to the local.properties file in the Android folder. You need to specify sdk versions in order to run in Android:
  • flutter.minSdkVersion = 21
  • flutter.compileSdkVersion = 31
  • flutter.compileSdkVersion = 31
5. Download google-service.json file from the firebase Firebase Doc
6. Finally run the project with:
  • flutter run

File Structure

A High-level overview of the project structure:


lib/                     # Root Package
|
├─ constants/            # All app constants
├─ database/             # Local app database (shared pref) 
├─ handlers/             # Audio Handler
├─ l10n/                 # Localization
├─ models/               # Models for handling data    
├─ providers/            # Manages app state
├─ screens/              # App screens
│  ├─ surah_details/     # Views for different components
|
├─ services/             # Services 
├─ themes/               # App themes 
├─ utils/                # Utils for components 
│
├─ widgets/              # App widgets
   ├─ animations/        # Animations
   ├─ app_bars/          # Different style of app bars
   ├─ bars/              # Different bar styles
   ├─ bottom_sheets/     # Different style of bottom sheets
   ├─ buttons/           # Different style of buttons
   ├─ cards/             # Cards
   ├─ drawer/            # Drawer
   ├─ lists/             # List widgets
   ├─ pop_up/            # Pop Up dialogs
   ├─ quran/             # Widgets related to the Quran
   ├─ tags/              # Tags

Credits

Contributing

If you'd like to contribute, please take a look at the PRs Welcome label on the issue tracker. For new features, please open an issue to discuss it before beginning implementation. May Allah reward all the awesome Contributors.

Open Source Projects Used

ToDo Tasks

License

This application is released under the MIT license. You can use the code for any purpose, including commercial projects.

license

About Fabrikod

We are a company that creates cutting-edge digital experiences for savvy customers, and we like how simple Flutter simplifies that process. Please visit our website to discover more about what we do. Please get in touch with us!