isnady 0.0.1 β 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +56 -19
- package/index.d.ts +11 -11
- package/index.js +2 -2
- package/package.json +1 -1
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Bayram Kotan
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Bayram Kotan
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,33 +1,70 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">π isnady <sub>Ψ₯Ψ³ΩΨ§Ψ―</sub></h1>
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<strong>Hadith search built around the isnad, the chain of transmission</strong><br>
|
|
5
|
+
<sub>The JavaScript and TypeScript package</sub>
|
|
6
|
+
</p>
|
|
4
7
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
<p align="center">
|
|
9
|
+
<a href="https://www.npmjs.com/package/isnady">
|
|
10
|
+
<img src="https://img.shields.io/npm/v/isnady?style=for-the-badge&color=14304F&logo=npm&label=npm" alt="npm">
|
|
11
|
+
</a>
|
|
12
|
+
<a href="https://pypi.org/project/isnady/">
|
|
13
|
+
<img src="https://img.shields.io/pypi/v/isnady?style=for-the-badge&color=1D4777&logo=pypi&logoColor=white&label=app%20on%20PyPI" alt="PyPI">
|
|
14
|
+
</a>
|
|
15
|
+
<img src="https://img.shields.io/badge/License-MIT-D6B25E?style=for-the-badge" alt="License">
|
|
16
|
+
</p>
|
|
8
17
|
|
|
9
|
-
>
|
|
10
|
-
|
|
18
|
+
<p align="center">
|
|
19
|
+
<img src="https://raw.githubusercontent.com/bayramkotan/isnady/main/assets/screenshots/chain.png" alt="The isnady app β the chain of Sahih al-Bukhari 1 from the book to the Prophet" width="780">
|
|
20
|
+
</p>
|
|
11
21
|
|
|
12
|
-
|
|
22
|
+
---
|
|
13
23
|
|
|
14
|
-
|
|
15
|
-
|
|
24
|
+
## π§ Where things stand
|
|
25
|
+
|
|
26
|
+
**isnady** is a hadith search application whose centre is the *isnad*: it reads each
|
|
27
|
+
chain of transmission from the Arabic text, narrator by narrator, and explains what each
|
|
28
|
+
link means. The application runs today on Windows, Linux and macOS:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pip install isnady
|
|
32
|
+
iy
|
|
16
33
|
```
|
|
17
34
|
|
|
35
|
+
**This npm package is the JavaScript side, and it is not functional yet.** It will be the
|
|
36
|
+
client of the isnady.net web service, which runs the same engine as the application, so a
|
|
37
|
+
chain read on the web and in the app always gives the same answer. Until that service
|
|
38
|
+
exists, the package only reports its version:
|
|
39
|
+
|
|
18
40
|
```js
|
|
19
41
|
import { info, version } from "isnady";
|
|
20
|
-
|
|
21
|
-
console.log(
|
|
42
|
+
|
|
43
|
+
console.log(version); // "0.0.8"
|
|
44
|
+
console.log(info()); // { name: "isnady", version: "0.0.8", dataLoaded: false, homepage: "β¦" }
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
TypeScript declarations are included.
|
|
48
|
+
|
|
49
|
+
## πΊοΈ Planned
|
|
50
|
+
|
|
51
|
+
```js
|
|
52
|
+
import { searchHadith, getChain, getNarrator } from "isnady";
|
|
53
|
+
|
|
54
|
+
const results = await searchHadith("Ψ§ΩΩΩΨ§Ψͺ", { book: "bukhari" });
|
|
55
|
+
const chain = await getChain("bukhari", 1); // narrators and the words linking them
|
|
56
|
+
const person = await getNarrator(chain.links[0]); // biography, teachers, students, verdicts
|
|
22
57
|
```
|
|
23
58
|
|
|
24
|
-
|
|
59
|
+
Search with Arabic diacritics ignored, chains read narrator by narrator, and grades shown
|
|
60
|
+
exactly as each scholar gave them β the same results as the application.
|
|
61
|
+
|
|
62
|
+
## π Links
|
|
25
63
|
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
64
|
+
- **Application and source:** [github.com/bayramkotan/isnady](https://github.com/bayramkotan/isnady)
|
|
65
|
+
- **Python package:** [pypi.org/project/isnady](https://pypi.org/project/isnady/)
|
|
66
|
+
- **Issues:** [github.com/bayramkotan/isnady/issues](https://github.com/bayramkotan/isnady/issues)
|
|
29
67
|
|
|
30
|
-
## License
|
|
68
|
+
## π License
|
|
31
69
|
|
|
32
|
-
MIT
|
|
33
|
-
its own license, listed in the main repository as they are added.
|
|
70
|
+
MIT. Hadith data comes from separate sources, each under its own licence.
|
package/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export declare const version: string;
|
|
2
|
-
export declare const name: string;
|
|
3
|
-
|
|
4
|
-
export interface IsnadyInfo {
|
|
5
|
-
name: string;
|
|
6
|
-
version: string;
|
|
7
|
-
dataLoaded: boolean;
|
|
8
|
-
homepage: string;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export declare function info(): IsnadyInfo;
|
|
1
|
+
export declare const version: string;
|
|
2
|
+
export declare const name: string;
|
|
3
|
+
|
|
4
|
+
export interface IsnadyInfo {
|
|
5
|
+
name: string;
|
|
6
|
+
version: string;
|
|
7
|
+
dataLoaded: boolean;
|
|
8
|
+
homepage: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export declare function info(): IsnadyInfo;
|
package/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* isnady β hadith search built around the isnad.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* This is a placeholder release: it reserves the package name and exposes
|
|
5
5
|
* version information only. The search API arrives once the shared SQLite
|
|
6
6
|
* database (used by both the Python and JavaScript packages) exists.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
export const version = "0.0.
|
|
9
|
+
export const version = "0.0.8";
|
|
10
10
|
export const name = "isnady";
|
|
11
11
|
|
|
12
12
|
/** Returns basic package information. */
|