335 источников времени намаза
Каждый региональный муфтият публикует свой расчёт fajr/isha — свой угол, свою поправку, иногда фикс-интервалы. Мы собрали 335 нормализованных источников в 27 волн. Все источники имеют единую схему (slug, authority, region_code, madhhab, fajr_angle, isha_angle, isha_interval, shafaq, website, method_id).
«Разница между муфтиятом в Дакке и в Касабланке может достигать 38 минут для fajr в июне. Вопрос не в правде, а в том, какую конвенцию вы приняли».
Волны миграции (27 штук)
Россия, СНГ
DUMRF (Москва, Саратов, Ярославль), TsDUM, Татарстан, Башкирия, Дагестан, Чечня, Ингушетия, Кабардино-Балкария, Карачаево-Черкесия, Адыгея, Казахстан, Узбекистан, Кыргызстан, Таджикистан, Туркменистан, Азербайджан
Турция, Балканы
Diyanet (Turkey + 81 провинция), BosniaMufti, AlbaniaKMSh, KosovaBIK, MuslimMontenegro, SerbiaIZ, SkopjeIVZ, Bulgaria GlavnoMuftijstvo
Залив + Левант
UAE (DubaiAwqaf, AbuDhabiGAIAE), GDIA Saudi, Umm al-Qura, Qatar AwqafMinistry, Kuwait AwqafMinistry, Bahrain JAFFARI, Oman MoERA, Jordan AwqafMinistry, Lebanon DarAlFatwa
Северная Африка
Morocco Habous, Algeria MinAffairsReligieuses, Tunisia AffairesReligieuses, Libya Awqaf, Egypt DarAlIfta, Sudan Ministry, Mauritania Ministry
SE Asia
Malaysia JAKIM + 14 state muftis, Indonesia Kemenag + provincial, Singapore MUIS, Brunei KHEU, Thailand SheikhulIslam, Philippines NCMF, Cambodia Mufti
Subcontinent + West
Pakistan CII, Bangladesh IslamicFoundation, India Deoband/Barelvi/SC, UK MCB, USA ISNA+FCNA, Canada CCMW, France CFCM, Germany ZMD, South Africa MJC, Australia ANIC
Эндпоинты (требуют API-ключ)
GET /v1/providers/ Весь каталог 335 записей + meta (authority, region, website)
GET /v1/providers/{slug} Полная карточка одного провайдера
GET /v1/providers/by-region/{region_code} Фильтр по ISO-коду страны
GET /v1/providers/{slug}/times Рассчитать время намаза по конкретному провайдеру для точки
GET /v1/sources-compare Сравнить N провайдеров бок о бок на одной дате
GET /v1/divergence Вывести диапазон разброса (min–max) и stddev по пулу источников
Как нормализован каталог
Исходные источники разные: некоторые публикуют PDF с таблицами времени для своих городов, другие — фикс-углы, третьи — свой API. Мы нормализовали всё в единый tuple-каталог:
Provider(
slug="diyanet-turkey",
authority="Türkiye Diyanet İşleri Başkanlığı",
region_code="tr",
madhhab="hanafi",
fajr_angle=18.0,
isha_angle=17.0,
isha_interval=None,
shafaq="general",
website="https://namazvakitleri.diyanet.gov.tr",
method_id="TURKEY",
) Это позволяет для любого провайдера вызвать те же adhanpy-функции с подставленными
углами — время намаза получается вычислимо, а не фиксированно для одной точки.
Для провайдеров с фиксированным городом (например, местечковые муфтияты с одной mosque) есть
флаг base_city — при запросе с далёкого lat/lon возвращается предупреждение.