quran-reader

Quran Reader

A native GNOME application for reading the Quran, built with Python, GTK4, and libadwaita.

Features

Screenshots

Mushaf mode Text mode
SVG page rendering Arabic + English per ayah

Requirements

Debian / Ubuntu:

sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-4.0 gir1.2-adw-1

Fedora:

sudo dnf install python3-gobject gtk4 libadwaita

Setup

git clone https://github.com/hihebark/quran-gnome.git
cd quran-gnome
python3 src/main.py

Project Structure

data/
  mushaf-qatar-layout.db    # Mushaf Qatar page/line layout (from qul.tarteel.ai)
  quran-pages/              # 604 ligature-based SVG pages   (from qul.tarteel.ai)
  quran-text.db             # Arabic + English ayah text (bundled)
scripts/
  build_text_db.py          # Regenerate quran-text.db from alquran.cloud (optional)
src/
  main.py                   # Entry point
  quran_gnome/
    __init__.py
    constants.py            # Paths, CSS, surah metadata
    db.py                   # Database access layer
    window.py               # GTK4 / Adwaita application and UI

Data Sources

Mushaf layout and SVG pages are from the QUL - Quran Universal Library by Tarteel AI.

English translation (Sahih International) is fetched via the alquran.cloud API and cached locally.

License

This project is released into the public domain under The Unlicense.

Quran data from QUL (Tarteel AI) is used under their respective terms. See qul.tarteel.ai/resources for details.