quran 包提供了对古兰经数据的全面访问,包括阿拉伯语文本、翻译、音频 URL 以及关于章节(苏拉)、节(阿亚)和启示地点等元数据。专为 Flutter 应用程序设计,该包使开发者能够构建伊斯兰学习工具、祈祷应用或数字古兰经阅读器,并提供结构化且可靠的数据。该包支持多种平台,确保在 Android、iOS、Web、macOS、Windows 和 Linux 上功能一致。非常适合需要准确且组织良好的古兰经内容的应用。
适合场景
数字古兰经阅读器
伊斯兰教育应用
祈祷与反思工具
古兰经翻译比较
音频诵读集成
主要特点
阿拉伯语文本和翻译
音频 URL 支持
章节和经文元数据
Juz 和启示详情
跨平台兼容性
适合对象
伊斯兰应用程序开发者
教育软件创作者
多语言古兰经应用程序
移动和网页版古兰经平台
使用建议
需要互联网才能播放音频
数据大小可能影响应用性能
仅限静态内容,不支持动态更新
原始 README
以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。
Quran text (Arabic), audio URLs, and details of pages, juz, surah, ayah, place of revelation etc.
basmala - The constant 'بِسْمِ ٱللَّهِ ٱلرَّحْمَٰنِ ٱلرَّحِيمِ'
sajdah - The constant 'سَجْدَةٌ'
totalJuzCount - The constant total juz count
totalMadaniSurahs - The constant total of madani surahs
totalMakkiSurahs - The constant total of makki surahs
totalPagesCount - The most standard and common copy of Arabic only Quran total pages count
totalSurahCount - The constant total surah count
totalVerseCount - The constant total verse count
Functions:
Juz:
getJuzNumber(int surahNumber, int verseNumber) - Takes [surahNumber] & [verseNumber] and returns Juz number
getSurahAndVersesFromJuz(int juzNumber) - Takes [juzNumber] and returns a map containing Surah and Verse numbers
Surah:
getSurahName(int surahNumber) - Takes [surahNumber] and returns the Surah name
getSurahNameArabic(int surahNumber) - Takes [surahNumber] returns the Surah name in Arabic
getSurahNameEnglish(int surahNumber) - Takes [surahNumber] returns the Surah name in English
getSurahNameTurkish(int surahNumber) - Takes [surahNumber] returns the Surah name in Turkish
getSurahNameFrench(int surahNumber) - Takes [surahNumber] returns the Surah name in French
getPlaceOfRevelation(int surahNumber) - Takes [surahNumber] and returns the Place of Revelation (Makkah / Madinah) of that Surah
getVerseCount(int surahNumber) - Takes [surahNumber] and returns the count of total Verses in that Surah
Verse:
getVerse(int surahNumber, int verseNumber, {bool verseEndSymbol, bool includeBasmala}) - Takes [surahNumber], [verseNumber], [verseEndSymbol] (optional) & [includeBasmala] (optional) and returns the Verse in Arabic
getBasmala(int surahNumber) - Takes [surahNumber] and returns the Basmala prefixed to that Surah's first verse, or null for Surah 1 (its Basmala is verse 1 itself) and Surah 9 (no Basmala)
getVerseEndSymbol(int verseNumber, {bool arabicNumeral}) - Takes [verseNumber], [arabicNumeral] (optional) and returns '' symbol with verse number
isSajdahVerse(int surahNumber, int verseNumber) - Takes [surahNumber], [verseNumber] and returns true if verse is sajdah verse
getPageData(int pageNumber) - Takes [pageNumber] and returns a list containing Surahs and the starting and ending Verse numbers in that page
getPageNumber(int surahNumber, int verseNumber) - Takes [surahNumber], [verseNumber] and returns the page number of the Quran
getSurahCountByPage(int pageNumber) - Takes [pageNumber] and returns total surahs count in that page
getSurahPages(int surahNumber) - Takes [surahNumber] and returns the list of page numbers of that surah
getVerseCountByPage(int pageNumber) - Takes [pageNumber] and returns total verses count in that page
getVersesTextByPage(int pageNumber, {bool verseEndSymbol, SurahSeperator surahSeperator, customSurahSeperator, bool includeBasmala}) - Takes [pageNumber], [verseEndSymbol], [surahSeperator], [customSurahSeperator] & [includeBasmala] (optional) and returns the list of verses in that page
URLs:
getAudioURLBySurah(int surahNumber, { Reciter reciter = Reciter.arAlafasy, int bitrate = 128 }) - Takes [surahNumber] and returns audio URL of that surah
getAudioURLByVerse(int surahNumber, int verseNumber, { Reciter reciter = Reciter.arAlafasy, int bitrate = 128 }) - Takes [surahNumber] & [verseNumber] and returns audio URL of that verse
getAudioURLByVerseNumber(int verseNumber, { Reciter reciter = Reciter.arAlafasy, int bitrate = 128 }) - Takes [verseNumber] and returns audio URL of that verse
searchWords(List<String> words) - Takes a list of words [words] and returns a map containing no. of occurences and result of the word search in the arabic quran text
searchWordsInTranslation(List<String> words, {Translation translation}) - Takes a list of words [words] and [translation] (optional) and returns a map containing no. of occurences and result of the word search in the traslation
Translations:
English (Saheeh International) - Translation.enSaheeh
English (Clear Quran) - Translation.enClearQuran
French (Muhammad Hamidullah) - Translation.frHamidullah
Turkish - Translation.trSaheeh
Malayalam (Cheriyamundam Abdul Hameed and Kunhi Mohammed Parappoor) - Translation.mlAbdulHameed
Farsi - Translation.faHusseinDari
Portuguese - Translation.portuguese
Italian - Translation.itPiccardo
Dutch - Translation.nlSiregar
Russian - Translation.ruKuliev
Bengali - Translation.bengali
Chinese - Translation.chinese
Swedish - Translation.swedish
Spanish - Translation.spanish
Urdu - Translation.urdu
Indonesian - Translation.indonesian
Font Setup
It is recommended to use google_fonts package and use the following fonts for better Quranic text display:
Amiri - GoogleFonts.amiri()
Amiri Quran - GoogleFonts.amiriQuran()
Setup
Add the following dependencies in your pubspec.yaml: