quran-meta

Quran Meta

Static Badge GitHub License GitHub Repo stars GitHub package.json version

NPM Version npms.io npms.io npms.io npms.io NPM Downloads

NPM Type Definitions GitHub top language Quality Gate Status

GitHub repo size GitHub code size in bytes npm bundle size npm bundle size

Welcome to Quran Meta Project

This project is to help with Quran related meta queries.

Answering Questions like:

Playground

See in action and try it without installing anything:

Installation

In a browser:

<script src="quran-meta.js"></script>

Also modern browsers allow

<script type="module">
import quranMeta from "quran-meta.esm.js"
</script>

The library is available from various CDNs

Using npm:

$ npm i --save quran-meta

Usage

In Node.js see example here:

var quranMeta = require("quran-meta")

console.log(" Assalam Aleykum! ") // => 'Assalam Aleykum!'
console.log(`There are ${quranMeta.meta.numSurahs} suras in the Holy Quran`) // => 'There are 114 suras in the Holy Quran'

In the browser/ES:

import { meta } from "quran-meta"
console.log("Assalam Aleykum!")
console.log(`There are ${meta.numSurahs} suras in the Holy Quran`) // => 'There are 114 suras in the Holy Quran'

In TypeScript:

import { meta, getAyahCountinSurah, AyahNo, Surah } from "quran-meta"

console.log(`There are ${meta.numSurahs} suras in the Holy Quran`)

for (let surah: Surah = 1; surah <= meta.numSurahs; surah++) {
  const ayaCount = getAyahCountinSurah(surah)
  console.log(surah, ': ',ayaCount)
}

Terminology

APi Reference Documentation

See here for API documentation

Examples

You can find some examples here and souce code for them here

Projects using Quran-meta

Demo

Demo image

Data correctness and validity testing

Quran-Meta is 100% unit test covered and moreover data is cross checked with other apis to guarantee absolute correctness.

one can run pnpx jiti examples/data-check to run suite of validation tests against the following data sources

Any suggestion to further improve this are welcome.

Distributions and Downloads

Here you can find the following

   
Source code in typescript TS
Javascript code autotranspiled from TS as ES Next ESNext
Javascript code autotranspiled from TS as CJS ES5+CommonJS
   
Distributions of library as  
UMD/ UMD minified builds can be used directly in the browser via a <script> (see here about UMD format) ES5+UMD
CommonJS for use with older bundlers like browserify or webpack ES5+CommonJS
ESM for use with modern bundlers like webpack 2 or Rollup and for direct imports in modern browsers via <script type="module"> ES5+ESM

References:

License

This software is distributed under MIT license.