Skip to main content

Mopidy-Mp3Quran

Mopidy extension for streaming Quran recitations and radio stations from Mp3Quran.

Features

  • Browse and stream Quran recitations from 100+ reciters
  • Listen to Quran radio stations
  • Search reciters by name or recitation style (Riwaya)
  • Configurable language, cache TTL, and request timeout
  • Caching to reduce API calls

Installation

From PyPI:

pip install Mopidy-Mp3Quran

From source:

git clone https://github.com/aymanbagabas/mopidy-mp3quran.git
cd mopidy-mp3quran && pip install .

Configuration

By default, this extension is enabled. Modify the Mopidy configuration file to customize:

[mp3quran]
enabled = true
language = english
cache_ttl = 3600
timeout = 10

Configuration options:

  • language - API language (default: English). Controls the language of reciter and surah names. Accepts both the full name (e.g. English, arabic) and the locale code (e.g. eng, ar), case-insensitive.

Supported languages:

Locale Language Native
ar Arabic العربية
eng English English
fr French Français
ru Russian Русский
de German Deutsch
es Spanish Español
tr Turkish Türkçe
cn Chinese 中文
th Thai ไทย
ur Urdu اردو
bn Bengali বাংলা
bs Bosnian Bosanski
ug Uyghur ئۇيغۇرچە
fa Persian فارسی
tg Tajik (Cyrillic) тоҷикӣ
ml Malayalam മലയാളം
tl Tagalog Tagalog
id Indonesian Indonesia
pt Portuguese Português
ha Hausa Hausa
sw Swahili Kiswahili
  • cache_ttl - Cache time-to-live in seconds (default: 3600). Set to 0 to disable caching.
  • timeout - HTTP request timeout in seconds (default: 10).

Usage

Browse the library tree:

  1. Mp3Quran (root) — top-level entry
  2. Languages — switch to a different language
  3. Reciters — list of all available reciters
  4. Radios — list of all radio stations
  5. Select a reciter to see their recitation versions (Moshaf, e.g. Hafs, Warsh)
  6. Select a moshaf to see its available surahs
  7. Select a surah to play it

Use search to find reciters or radio stations by name.

Development

git clone https://github.com/aymanbagabas/mopidy-mp3quran.git
cd mopidy-mp3quran
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

Run the test suite:

pytest

Docker

Run with Docker Compose (includes Mopidy + Snapcast server):

docker compose up

This starts a single container with Mopidy and Snapcast server. Mopidy outputs audio to a named pipe that Snapcast reads from.

Port Service
6600 Mopidy MPD
6680 Mopidy HTTP
1704 Snapcast stream
1705 Snapcast control
1780 Snapcast HTTP/Web UI

Configuration files are in docker/mopidy.conf and docker/snapserver.conf.

Project resources

Changelog

v0.2.1 (2026-04-28)

  • Support fuzzy search for reciters, surahs, radios, and moshafs

v0.2.0 (2026-04-26)

  • Migrate to mp3quran.net v3 REST API
  • Support multiple moshaf (recitation versions) per reciter
  • Add riwayat (narration types) support
  • Language config now accepts both full names and locale codes (case-insensitive)
  • Migrate to pyproject.toml with src layout
  • Migrate to Mopidy 4.x API (search on LibraryProvider)
  • Fix proxy configuration bug (config key)
  • Fix search dropping reciter results
  • Add unit test suite (102 tests)
  • Remove dead parse_uri() function
  • Migrate to Python 3
  • Add error handling for all API calls
  • Add caching with configurable TTL
  • Add search functionality
  • Add configuration options (language, cache_ttl, timeout)
  • Add type hints and docstrings
  • Improve error handling in URI parsing and lookup

v0.1.0 (2018-03-05)

  • Initial release.

Metadata

Release files for Mopidy-Mp3Quran 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Mopidy-Mp3Quran 0.2.1
File Size Uploaded
mopidy_mp3quran-0.2.1.tar.gz 19.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for Mopidy-Mp3Quran 0.2.1
File Interpreter ABI Platform
mopidy_mp3quran-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 33.7 kB

Release files / mopidy_mp3quran-0.2.1.tar.gz

Download URL mopidy_mp3quran-0.2.1.tar.gz
Size 19.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cdef4ce492b2729a7bee0af5ce7dab726fa064f83cc14e9fc44c874196609a10
BLAKE2b-256 checksum
How to use checksums
939ef995776187282c7808b4d0a268f99377e9f41354fb9c3e9db9c387a86a54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 28, 2026.

Transparency log

Release files / mopidy_mp3quran-0.2.1-py3-none-any.whl

Download URL mopidy_mp3quran-0.2.1-py3-none-any.whl
Size 14.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bf196a5731ea5f553d41dc86fc9f0a90fe0236cbe56cc7f4d3e6ad5d4ff58ff7
BLAKE2b-256 checksum
How to use checksums
4f477450be5c4dcf75b5019bc7f03f241f67c1c1068afef21a7c808189abe8f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 28, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page