Skip to main content
Help the Python Software Foundation raise $60,000 USD by December 31st!  Building the PSF Q4 Fundraiser

PyQuran: The Python package for Quranic Analysis

Project description

PyQuran: The Python package for Quranic Analysis

PyQuran is a package which provides tools for Quranic Analysis and Arabic texts.

It is still a small package which needs a lot of your effort. We believe that it is a seed of a fundamental general package for computations on Quran with Python, even at the most basic level which is simply retrieving Quran text.

Before Islam, Arabic letters were without dots— rasm, which resulted in ambiguty, two or three letters had the same rasm or form.

Muslims have decided to remove this ambiguity by adding dots above or below each letter of the ones which share the same rasm. Now each letter has a unique form. By the way, originally, Quran was written using letters without dots.

To enable researchers to use modern alphabet, old rasm or other, we introduce alphabetical systems, It is a dynamic construction of letters— Alphabetical Systems.

Quran Corpus

We use tanzil Quran Corpus (Uthmani Text), it is in UTF-8 encoding. You can find all unique characters of Uthmanic Corpus here.

There are special recitation symbols مصطلحات الضبط in the Uthmani Text, they are a guide for the reciter to know the right positions to pause and the rules of tajweed. We provide an interface to filter those symbols, on the fly while fetching from the corpus, we DO NOT change the corpus, NEVER.

For the full details about filtering special recitation symbols مصطلحات الضبط.

Current Features

PyQuran needs and Upcoming Features.

  • Words Frequency Table filtered according to words meaning.
  • Morphology analysis of words to their roots.
  • Arabic tools for representing Arabic text for AI algorithms and neural networks, for more serious Arabic text processing and understanding. Those tools should take meaning, diacritics, roots and other morphology aspects in account.
  • Some PyQuran in-house tools and architecture enhancement will be on GitHub Issues for you contributors to make PyQuran professional and easy to use.


To contribute and maintain PyQuran, Please read CONTRIBUTING section.



  • From PyPI: $ pip3 install pyquran


@MISC {PyQuran2018,
author = "Waleed A. Yousef and
          Taha M. Madbouly and
          Omar M. Ibrahime and
          Ali H. El-Kassas and
          Ali O. Hassan and
          Abdallah R. Albohy",
title = "PyQuran: The Python package for Quranic Analysis",
howpublished = "",
year = "2018"}


Author Page

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyquran, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size pyquran-1.0.1-py3-none-any.whl (334.8 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size pyquran-1.0.1.tar.gz (318.2 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page