Skip to content

TwoA2U/Quran-Generator

Repository files navigation

Al-Quran EPUB Generator

Web app untuk generate EPUB Al-Quran langsung di browser, tanpa server. Data diambil dari Quran Foundation API menggunakan script Python terpisah, lalu disimpan sebagai file JSON lokal.

Fitur

  • Generate EPUB 100% di browser, tanpa server
  • Berbagai pilihan Arabic script (Uthmani, QPC Hafs, Imlaei, dll)
  • Berbagai pilihan font Arab — dioptimalkan untuk Kindle/E-reader
  • Transliterasi latin per ayat (English Transliteration)
  • Terjemahan multi-bahasa
  • Nomor halaman Mushaf Madinah

Rekomendasi Script & Font

Script Font yang Cocok
qpc_hafs KFGQPC Uthmanic Script HAFS atau Quran Complex Font v2
uthmani Quran Complex Font v2 atau Scheherazade New atau Amiri Quran

Struktur Proyek

Quran-Generator/
├── .github/
│   └── workflows/
│       └── deploy.yml
├── public/
│   ├── data/
│   │   ├── surah.json              # metadata surah
│   │   └── translations.json       # manifest terjemahan (auto-generated)
│   ├── fonts/                      # font Arab (.ttf / .woff2)
│   ├── script/                     # Arabic script JSON (generated by Python)
│   └── translation/                # Translation JSON (generated by Python)
├── src/
│   ├── main.js
│   └── style.css
├── index.html
├── quranEpubGenerator.py           # Python script untuk fetch data dari API
├── .env.example
└── vite.config.js

Setup

1. Install dependencies

npm install
pip install requests python-dotenv pycountry

2. Konfigurasi API credentials

Salin .env.example ke .env lalu isi credentials dari Quran Foundation:

cp .env.example .env
QF_CLIENT_ID=your_client_id
QF_CLIENT_SECRET=your_client_secret

3. Fetch data dari API

# Download semua Arabic scripts
python quranEpubGenerator.py --mode script

# Download terjemahan — default English
python quranEpubGenerator.py --mode translation

# Download terjemahan bahasa tertentu (ISO 639-1)
python quranEpubGenerator.py --mode translation --lang en id az

# Download semua terjemahan semua bahasa
python quranEpubGenerator.py --mode translation --lang all

# Download script + terjemahan sekaligus
python quranEpubGenerator.py --mode both --lang en id

# Lihat semua bahasa yang tersedia
python quranEpubGenerator.py --list-langs

# Generate ulang manifest terjemahan (tanpa API call)
python quranEpubGenerator.py --gen-manifest

4. Jalankan dev server

npm run dev

5. Build

npm run build
# output di folder dist/

Sumber Data

Sumber Font

Library

About

Quran Generator for Epub File

Resources

Stars

Watchers

Forks

Releases

No releases published

Contributors