Skip to main content

 jami-al-tirmidhi

The complete Jami al-Tirmidhi — 3,956 hadiths, full Arabic & English.
Offline-first · zero dependencies · published on both npm and PyPI.


   

     


✨ Features

Feature Details
📚 Complete Collection All 3,956 authentic hadiths from Jami al-Tirmidhi
🌐 Bilingual Full Arabic text + English translation
Offline-first Data bundled — no CDN needed
🔧 Zero Dependencies Nothing extra to install
🔍 Full-text Search Search English text and narrator names instantly
🖥️ CLI Terminal access with Arabic/English/both flags
⚛️ React Hook One command generates useTirmidhi()
🐍 Python Identical API — same camelCase method names
📘 TypeScript Full type definitions included

🚀 Installation

npm install jami-al-tirmidhi       # JS local
npm install -g jami-al-tirmidhi    # JS global CLI
pip install jami-al-tirmidhi       # Python

🟨 JavaScript / Node.js

const tirmidhi = require('jami-al-tirmidhi');  // CJS
import tirmidhi from 'jami-al-tirmidhi';       // ESM

tirmidhi.get(1)
tirmidhi.getByChapter(1)
tirmidhi.search('prayer')
tirmidhi.search('prayer', 5)
tirmidhi.getRandom()
tirmidhi[0]
tirmidhi.length
tirmidhi.metadata
tirmidhi.chapters
tirmidhi.find(h => h.id === 23)
tirmidhi.filter(h => h.chapterId === 1)
tirmidhi.slice(0, 10)

⚛️ React

cd my-react-app
tirmidhi --react    # generates src/hooks/useTirmidhi.js
import { useTirmidhi } from '../hooks/useTirmidhi';

function HadithOfTheDay() {
  const tirmidhi = useTirmidhi();
  if (!tirmidhi) return <p>Loading...</p>;
  const h = tirmidhi.getRandom();
  return <div><strong>{h.english.narrator}</strong><p>{h.english.text}</p></div>;
}

🐍 Python

from jami_al_tirmidhi import Tirmidhi

tirmidhi = Tirmidhi()

tirmidhi.get(1)
tirmidhi.getByChapter(1)
tirmidhi.search("prayer")
tirmidhi.search("prayer", limit=5)
tirmidhi.getRandom()
tirmidhi[0]
tirmidhi.length
tirmidhi.find(lambda h: h.id == 23)
tirmidhi.filter(lambda h: h.chapterId == 1)
tirmidhi.slice(0, 10)

# Custom path
tirmidhi = Tirmidhi(data_path="/path/to/tirmidhi.json")

🖥️ CLI

tirmidhi 1
tirmidhi 2345 -a           # Arabic only
tirmidhi 2345 -b           # Arabic + English
tirmidhi 23 34             # Hadith 34 within chapter 23
tirmidhi --search "prayer"
tirmidhi --search "fasting" --all
tirmidhi --chapter 1
tirmidhi --random
tirmidhi --react
tirmidhi --version

📂 Structure

jami-al-tirmidhi/
├── data/
│   ├── tirmidhi.json          ← source of truth (replace with your real data)
│   ├── tirmidhi.json.gz       ← generated (shipped in packages)
│   └── chapters/              ← generated (gitignored)
├── bin/index.js               ← CLI
├── src/                       ← JS source
├── types/index.d.ts
├── python/jami_al_tirmidhi/   ← Python package
├── scripts/build.mjs
├── examples/
├── docs/
└── tests/

🔧 Development

# Place your real tirmidhi.json in data/
node scripts/build.mjs    # compress, generate chapters/, copy to python/

# Test locally before publishing
python -m build --wheel
python -m zipfile -l dist\jami_al_tirmidhi-1.0.0-py3-none-any.whl | findstr "tirmidhi.json.gz"
pip install dist\jami_al_tirmidhi-1.0.0-py3-none-any.whl --force-reinstall
tirmidhi 23

Publishing is automatic via GitHub Actions on every GitHub Release.


📄 License

GNU Affero General Public License v3.0 (AGPL-3.0)


Made with ❤️ for the Muslim community · Seeking knowledge together

Stars

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jami_al_tirmidhi-1.0.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jami_al_tirmidhi-1.0.0-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file jami_al_tirmidhi-1.0.0.tar.gz.

File metadata

  • Download URL: jami_al_tirmidhi-1.0.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for jami_al_tirmidhi-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ac76a74a3f18c23af1bdf84920dc182885f7e82e5de588305a498653d5bbce1b
MD5 dd20305708f691ef00f3a684f2952144
BLAKE2b-256 fac544fb54b5706f007c9bc0e5253e64b5f8f286d44cb0a277e1c392b0400767

See more details on using hashes here.

File details

Details for the file jami_al_tirmidhi-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jami_al_tirmidhi-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b09f8a834f4a47e5e9ec2649c7333592322fdee32d4a2e8fb31eabcdf600e142
MD5 3957748de9e80a825a1fa2e0b9ae2e96
BLAKE2b-256 4bcaa3c09d0f3b8c8d173445bba759c50eac31a17c2957bcb0f3f6a1f8773666

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page