eQuran

May 28, 2026 · View on GitHub

App version Latest release Last commit GitHub stars GitHub forks Release build License

Flutter Dart Release targets

Get it on F-Droid

eQuran is a focused Quran companion built with Flutter. It brings reading, listening, favourites, tafsir, transliteration, prayer times, Qibla direction, and offline audio downloads into one calm Material 3 experience.

The goal is simple: keep the interface quiet, keep the text central, and make the daily act of reading or listening feel easy to return to.

Screenshots

eQuran home screen Quran reading screen Surah list screen Audio player screen

Downloads screen Favourites screen Prayer times screen Settings screen

💖 Support the Project

If this project helps you, consider supporting its development! You can donate using any of the cryptocurrency addresses below:

CryptocurrencyBadgeWallet Address
Bitcoin (BTC)Bitcoinbc1qs7jfrkxvpdh96qmfu9srtla38fe30gvdvc22av
Ethereum (ETH)Ethereum0x9d60158D5315Fa46241FC47Bf76eEE6cF7abcAa9
Solana (SOL)SolanaGyy1Ar1Lu5zbyW9WEcisKkcGxBb4GPuUQEJvcQ4oV9va
USDC (ERC-20)USDC0x9d60158D5315Fa46241FC47Bf76eEE6cF7abcAa9
Litecoin (LTC)LitecoinLZW5Jh52Lnni6Zr3FQhimGGkyZPywSAaDX

What It Does

  • Read the Quran by Surah or Juz.
  • Resume from your last-read ayah.
  • Listen to full surahs or individual ayahs.
  • Download Quran audio for offline playback.
  • Choose from multiple reciters.
  • Save favourite ayahs with optional notes.
  • View translation, transliteration, and tafsir where available.
  • Use prayer times, reminders, location settings, and Qibla tools.
  • Share ayahs as generated images.
  • Use responsive layouts across mobile, tablet, and desktop-sized screens.

Supported Devices

PlatformStatusNotes
Android phones and tabletsSupportedPrimary mobile target. Release APKs are built in CI.
Linux desktopSupportedRelease bundle is built in CI.
Windows desktopSupportedRelease bundle is built in CI.
iOSProject files includedCan be run from Flutter with Apple tooling; not part of the current release workflow.
macOSProject files includedCan be run from Flutter with Apple tooling; not part of the current release workflow.
WebProject files includedUseful for development checks; not part of the current release workflow.

Requirements

Install the Flutter stable SDK and the platform tooling for the device you want to run:

TargetTooling
AndroidAndroid Studio, Android SDK, and an emulator or physical device
Linuxclang, cmake, ninja-build, pkg-config, libgtk-3-dev, and GStreamer development packages
WindowsVisual Studio with Desktop development with C++
iOS/macOSXcode on macOS
WebChrome or another Flutter-supported browser

This project currently expects:

Flutter >=3.41.7
Dart >=3.11.5 <4.0.0

Run The App

Clone the repository:

git clone https://github.com/ya27hw/equran_app.git
cd equran_app

Install dependencies:

flutter pub get

Run on the connected device or selected desktop target:

flutter run

You can also choose a specific target:

flutter run -d android
flutter run -d linux
flutter run -d windows
flutter run -d chrome

Build Releases

Android split APKs:

flutter build apk --release --split-per-abi

Linux:

flutter config --enable-linux-desktop
flutter build linux --release

Windows:

flutter config --enable-windows-desktop
flutter build windows --release

Build outputs are written under build/.

Project Shape

lib/
  backend/      Data, downloads, audio, persistence, settings, and services
  home/         Main screens, reading views, player, library, and settings
  prayer/       Prayer times, reminders, location, timezone, and Qibla tools
  utils/        Theme, layout, formatting, and shared helpers
  widgets/      Reusable interface components

assets/
  fonts/        Hafs Quran font
  content/      Daily hadith and dua content
  tafsir/       Tafsir JSON assets
  transliteration/

metadata/       Store listing metadata and app icon

Release Flow

The GitHub Actions release workflow lives in .github/workflows/deploy.yml.

On pushes to main or manual workflow dispatch, it reads the version from pubspec.yaml, builds Android split APKs plus Linux and Windows bundles, then publishes a GitHub Release when the version tag is new.

Notes For Maintainers

Prayer times are calculated locally with adhan_dart. Prayer reminders use flutter_local_notifications and Android scheduled notifications. Android 13 and newer require notification permission, which the app requests when reminders are enabled.

The prayer location picker uses flutter_map with OpenStreetMap-compatible tiles. If the app grows beyond light usage, use a tile provider that fits the project’s traffic and terms.

Contributing

Contributions are welcome when they keep the app focused, respectful, and easy to use.

Before opening a pull request:

  1. Keep the change scoped.
  2. Run dart format ..
  3. Run flutter analyze.
  4. Test the feature path you touched.
  5. Update documentation when setup, behavior, or release steps change.

License

eQuran is released under the MIT License.