Skip to main content

Complete Sunan Abi Dawud — 5,274 hadiths with full Arabic text and English translations. Offline-first, zero dependencies. CLI + Python library.

Project description

🕌 Sunan Abi Dawud

npm version npm downloads npm downloads per month license node version bundle size GitHub stars

📚 Complete Sunan Abi Dawud for JavaScript — CLI, Node.js, React, Vue, and every bundler. Tiny package, data served from CDN.

NPM


📊 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)


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

GitHub stars

Project details


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)

Uploaded Source

Built Distribution

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

sunan_abi_dawud-1.0.5-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

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

Hashes for sunan_abi_dawud-1.0.5.tar.gz
Algorithm Hash digest
SHA256 4eb2330e8b4683e446ac464a4e14ae2e45f18f968f6c1a0758721ba06f992f46
MD5 a6121d495bde4500113b6b6e4d178a03
BLAKE2b-256 c6e097d4610e8a59549b2e646711677e54805a0de0137d6cdff2f8caaa99e0ad

See more details on using hashes here.

File details

Details for the file sunan_abi_dawud-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for sunan_abi_dawud-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4dd8b03066b58a58958691d96e980674f8c8ef84e886ec6eae00e9e640fce076
MD5 27794f6b036da0f9b26e9654797850b7
BLAKE2b-256 8c0b3bff3fc16f1b89b87cebb178bc5c0bfc3bd16a7a2eede4f8b5c1d17c6e57

See more details on using hashes here.

Supported by

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