🕌 Sunan Abi Dawud
📚 Complete Sunan Abi Dawud for JavaScript — CLI, Node.js, React, Vue, and every bundler. Tiny package, data served from CDN.
📊 Package Statistics
| Metric | Value | Description |
|---|---|---|
| 📚 Total Hadiths | 5,274 | Complete Sunan Abi Dawud collection |
| 📝 Chapters | 1,871 | Detailed chapter organization |
| 📦 Package Size | ~3KB | Core package — data loads from CDN |
| 🔧 Dependencies | 0 | Zero external dependencies |
| 🌐 Bilingual | ✅ | Full Arabic text + English translations |
| 📘 TypeScript | ✅ | Built-in type definitions |
🚀 Installation
npm install sunan-abi-dawud # local
npm install -g sunan-abi-dawud # global CLI
🖥️ CLI Usage
dawud 1 # First hadith
dawud 2345 # Hadith #2345
dawud 23 34 # 34th hadith of chapter 23
dawud 2345 -a # Arabic only
dawud 2345 -b # Arabic + English
dawud --react # Generate React hook in current project
dawud --help
dawud --version
⚛️ React / Vue / Vite
cd my-react-app
dawud --react
# ✓ Generated: src/hooks/useDawud.js
import { useDawud } from '../hooks/useDawud';
function HadithOfTheDay() {
const dawud = useDawud();
if (!dawud) return <p>Loading...</p>;
const hadith = dawud.getRandom();
return (
<div>
<p><strong>{hadith.english.narrator}</strong></p>
<p>{hadith.english.text}</p>
</div>
);
}
🟩 Node.js Usage
// CommonJS
const dawud = require('sunan-abi-dawud');
console.log(dawud.get(1));
console.log(dawud.search('prayer'));
console.log(dawud.getRandom());
console.log(dawud.getByChapter(1));
console.log(dawud.length);
// ESM
import dawud from 'sunan-abi-dawud';
const hadith = dawud.get(23);
console.log(hadith.english.text);
🛠️ API Reference
| Method / Property | Description |
|---|---|
dawud[0] |
Hadith at index 0 |
dawud.get(id) |
Hadith by ID |
dawud.getByChapter(id) |
All hadiths in a chapter |
dawud.search(query) |
Full-text search |
dawud.getRandom() |
Random hadith |
dawud.length |
Total hadiths |
dawud.metadata |
Book metadata |
dawud.chapters |
All chapters |
All native array methods work: find, filter, map, forEach, slice.
📐 Data Structure
{
"id": 1,
"chapterId": 1,
"arabic": "حَدَّثَنَا...",
"english": {
"narrator": "Abu Huraira",
"text": "The Prophet (ﷺ) said..."
}
}
📄 License
GNU Affero General Public License v3.0 (AGPL-3.0)
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sunan_abi_dawud-1.0.5.tar.gz
(1.7 MB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sunan_abi_dawud-1.0.5.tar.gz.
File metadata
- Download URL: sunan_abi_dawud-1.0.5.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4eb2330e8b4683e446ac464a4e14ae2e45f18f968f6c1a0758721ba06f992f46
|
|
| MD5 |
a6121d495bde4500113b6b6e4d178a03
|
|
| BLAKE2b-256 |
c6e097d4610e8a59549b2e646711677e54805a0de0137d6cdff2f8caaa99e0ad
|
File details
Details for the file sunan_abi_dawud-1.0.5-py3-none-any.whl.
File metadata
- Download URL: sunan_abi_dawud-1.0.5-py3-none-any.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dd8b03066b58a58958691d96e980674f8c8ef84e886ec6eae00e9e640fce076
|
|
| MD5 |
27794f6b036da0f9b26e9654797850b7
|
|
| BLAKE2b-256 |
8c0b3bff3fc16f1b89b87cebb178bc5c0bfc3bd16a7a2eede4f8b5c1d17c6e57
|