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 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
- # isnady (JavaScript)
1
+ <h1 align="center">πŸ“œ isnady &nbsp;<sub>Ψ₯Ψ³Ω†Ψ§Ψ―</sub></h1>
2
2
 
3
- Hadith search built around the **isnad** β€” the chain of transmission.
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
- This is the JavaScript/TypeScript package of [isnady](https://github.com/bayramkotan/isnady).
6
- The desktop application is published on PyPI as `isnady`; both packages will read the
7
- same SQLite database of hadith, chains, narrators and verdicts.
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
- > **Status: pre-alpha (0.0.1).** This release only reserves the name and exposes version
10
- > information. No hadith data is included yet.
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
- ## Install
22
+ ---
13
23
 
14
- ```
15
- npm install isnady
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
- console.log(version); // "0.0.1"
21
- console.log(info());
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
- ## Planned
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
- - `searchHadith(query, options)` β€” by text, book, narrator and grade
27
- - `getNarrator(id)` β€” biography, teachers, students, verdicts, reliability score
28
- - `getChain(hadithId)` β€” the isnad, link by link
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 for the code. Hadith and narrator data will come from separate sources, each under
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
- * 0.0.1 is a placeholder release: it reserves the package name and exposes
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.1";
9
+ export const version = "0.0.8";
10
10
  export const name = "isnady";
11
11
 
12
12
  /** Returns basic package information. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isnady",
3
- "version": "0.0.1",
3
+ "version": "0.0.8",
4
4
  "description": "Hadith search with full isnad chains, narrator biographies, jarh wa ta'dil verdicts and reliability scores",
5
5
  "type": "module",
6
6
  "main": "./index.js",