A Python application to assist in waking up for Fajr prayer by providing 3 interactive verses/explanations from the Quran + ChatGPT explanations accompanied by a soothing Islamic prayer fade-in and fade-out audio file from YouTube.
Project description
fajrGPT
This Python Command-Line application assists in helping you wake up for Fajr prayer by providing automatically selected verses + explanations from the Quran after a set alarm time along with a soothing Islamic prayer fade-in and fade-out from Mishari bin Rashid Alafasy. The program uses the Quran Module to obtain Quran verses in English as well as OpenAI's API GPT models to produce corresponding Tafsir (explanation).
Features
- Plays Alafsay's Quran recitation audio for user-selected Surah (default is Surah Al-Fathiha) from Tahfeem
- Includes option to play Alafsay's Quranic recitation with its corresponding English translation obtained from The Chosen One
- Plays the downloaded audio after a user-specified countdown time (i.e. 10s, 15m, 7h), with volume gradually fading in.
- Option to select and display a Name of Allah and provide corresponding explanation of its meaning with the GPT API
- Displays automatically selected verses from the Quran and provides corresponding explanations.
- Depending on the length of the countdown, one, two, or three verses will be selected for display
- After each explanation, the program waits for the user to press Enter before proceeding.
- Once all explanations are provided, the audio volume gradually fades out over a 5-second period.
Usage
Installing FFmpeg
FFmpeg is a necessary dependency for this package in order to play audio mp3 files. Follow the instructions below based on your operating system:
Windows
Option 1: Using Conda (recommended for Conda users)
If you have Anaconda or Miniconda installed, you can install FFmpeg using the following command:
conda install -c conda-forge ffmpeg
Option 2: Manual Installation
- Go to the FFmpeg official download page and download the Windows version.
- Extract the ZIP archive.
- Add the path to the
bin
directory (whereffmpeg.exe
is located) to your system's PATH variable.
macOS
Using Homebrew (recommended):
brew install ffmpeg
Or follow the manual installation process similar to Windows by downloading from the FFmpeg official site.
Linux (e.g., Ubuntu)
Using the package manager:
sudo apt install ffmpeg
For other Linux distributions, adjust the command according to your package manager.
CLI Installation with PyPI Distribution
- Clone repo and install packages (for developers):
git clone https://github.com/malekinho8/quran-wake-up.git pip install -r requirements.txt pip install .
- Alternatively, install one dependency manually and
fajrGPT
through PyPI:pip install git+https://github.com/malekinho8/quran-module.git fajrGPT
- Run the main.py script, passing the required parameters:
fajrGPT --countdown-time <Seconds, Minutes, or Hours until Alarm> --surah <Which Surah (number) to play for the alarm, default is 1>
Required Parameters
--countdown-time
: The amount of time
Dependencies
- Python 3.x
click
pygame
pydub
moviepy
openai
scipy
mutagen
TheQuranModule
Notes
- The OpenAI API key must be set in an environment variable named
OPENAI_API_KEY
. See instructions here for more details.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file fajrGPT-1.7.2.tar.gz
.
File metadata
- Download URL: fajrGPT-1.7.2.tar.gz
- Upload date:
- Size: 3.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21f0caad5efc557a660dc4ba295c8b0bb79615d26cb41661793033bbbe1b7ea0 |
|
MD5 | 79641bb9e08a6a1c97f73b3f24fe398c |
|
BLAKE2b-256 | 298523b5b5135dca19ed2e027ad25f2d23873aacef35439a42800652c6ddfbd5 |
File details
Details for the file fajrGPT-1.7.2-py3-none-any.whl
.
File metadata
- Download URL: fajrGPT-1.7.2-py3-none-any.whl
- Upload date:
- Size: 5.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4b1958abab102872ded843e56e78d3fc899bfd6e93fb88cb20bbabfec442f2d |
|
MD5 | de551b5399398f2431581cf8e2691694 |
|
BLAKE2b-256 | 1e18ba8cd9e3b60c67081de92cb0e8a791f7cd73d8c4804945eb23e34bec6fd3 |