nusus 0.2.1 → 0.4.0

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.
Files changed (38) hide show
  1. package/README.md +50 -13
  2. package/dist/index.d.ts +1 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/models.d.ts +47 -0
  5. package/dist/models.d.ts.map +1 -1
  6. package/dist/turath/catalog-authors.d.ts +2 -0
  7. package/dist/turath/catalog-authors.d.ts.map +1 -0
  8. package/dist/turath/catalog-authors.js +3043 -0
  9. package/dist/turath/catalog-authors.js.map +1 -0
  10. package/dist/turath/catalog-data.d.ts +1 -0
  11. package/dist/turath/catalog-data.d.ts.map +1 -1
  12. package/dist/turath/catalog-data.js +1 -0
  13. package/dist/turath/catalog-data.js.map +1 -1
  14. package/dist/turath/catalog.d.ts +9 -2
  15. package/dist/turath/catalog.d.ts.map +1 -1
  16. package/dist/turath/catalog.js +80 -11
  17. package/dist/turath/catalog.js.map +1 -1
  18. package/dist/turath/citations.d.ts +8 -1
  19. package/dist/turath/citations.d.ts.map +1 -1
  20. package/dist/turath/citations.js +16 -1
  21. package/dist/turath/citations.js.map +1 -1
  22. package/dist/turath/client.d.ts +8 -7
  23. package/dist/turath/client.d.ts.map +1 -1
  24. package/dist/turath/client.js +38 -15
  25. package/dist/turath/client.js.map +1 -1
  26. package/dist/turath/excerpt.d.ts +22 -0
  27. package/dist/turath/excerpt.d.ts.map +1 -0
  28. package/dist/turath/excerpt.js +147 -0
  29. package/dist/turath/excerpt.js.map +1 -0
  30. package/dist/turath/index.d.ts +3 -3
  31. package/dist/turath/index.d.ts.map +1 -1
  32. package/dist/turath/index.js +2 -2
  33. package/dist/turath/index.js.map +1 -1
  34. package/dist/turath/normalize.d.ts.map +1 -1
  35. package/dist/turath/normalize.js +29 -5
  36. package/dist/turath/normalize.js.map +1 -1
  37. package/package.json +4 -2
  38. package/scripts/search.mjs +630 -143
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Nusus
2
2
 
3
- TypeScript SDK for searching and citing classical Islamic and Arabic texts through [Turath](https://app.turath.io/), a Shamela-style digital library. Use Nusus to retrieve source text, metadata, citations, and direct links from Arabic heritage books for research tools and AI agents.
3
+ TypeScript SDK for searching and citing classical Islamic and Arabic texts through [Turath](https://app.turath.io/), a Shamela-style digital library. Use Nusus to retrieve source text, metadata, citations, locators, and direct links from Arabic heritage books for research tools and AI agents.
4
4
 
5
5
  ```bash
6
6
  npm install nusus
@@ -13,7 +13,9 @@ import { createTurathClient } from "nusus/turath";
13
13
 
14
14
  const turath = createTurathClient({ timeout: 10_000 });
15
15
  const books = turath.findBooks("الأربعون النووية");
16
+ const authors = turath.findAuthors("النووي");
16
17
  const categories = turath.listCategories();
18
+ const catalog = turath.getCatalogMetadata();
17
19
  const results = await turath.search("إنما الأعمال بالنيات", {
18
20
  bookIds: [147927],
19
21
  });
@@ -21,43 +23,78 @@ const context = await turath.getContext(results.items[0]);
21
23
 
22
24
  console.log(context.text);
23
25
  console.log(context.citation);
26
+ console.log(context.locator);
24
27
  console.log(context.url);
25
28
  ```
26
29
 
27
- Agent-ready retrieval is one call:
30
+ Agent-ready retrieval is one call. By default each hit is a single page with a match-centered excerpt; adjacent pages are opt-in:
28
31
 
29
32
  ```ts
30
33
  const context = await turath.retrieve("النية", {
31
34
  maxPassages: 5,
32
35
  maxCharsPerPassage: 2_000,
36
+ // pagesBefore: 1,
37
+ // pagesAfter: 1,
33
38
  });
39
+
40
+ for (const passage of context.passages) {
41
+ console.log(passage.citation); // includes تراث bookId + صفحة تراث
42
+ console.log(passage.locator); // { bookId, internalPage, url, ... }
43
+ console.log(passage.provenance); // rank, truncation, scope, ...
44
+ }
34
45
  ```
35
46
 
36
- All requests support `AbortSignal`; failures use the exported `NususError` codes. Source text is returned unchanged. Search filters currently accept one Turath ID each because that is all the upstream API has verified.
47
+ All requests support `AbortSignal`; failures use the exported `NususError` codes. Source text is returned unchanged. Search filters currently accept one Turath ID each because that is all the upstream API has verified. The core SDK is retrieval-only: no madhhab ranking, fatwa logic, or hadith grading.
37
48
 
38
49
  ## Agent CLI
39
50
 
40
51
  ```bash
41
- npx nusus "إنما الأعمال بالنيات" 3
42
- npx nusus --book-id 147927 "النية" 3
43
- npx nusus --page 147927 5
44
-
45
- # Bun
46
- bunx nusus "إنما الأعمال بالنيات" 3
52
+ npx nusus --help
53
+ npx nusus --version
54
+ npx nusus find-books "الأربعون النووية" --limit 5
55
+ npx nusus find-books --author-id 44 --limit 10
56
+ npx nusus find-authors "النووي" --limit 5
57
+ npx nusus search "إنما الأعمال بالنيات" --book-id 147927
58
+ npx nusus retrieve "النية" --max-passages 3 --max-chars 2000
59
+ npx nusus get-page --book-id 147927 --page-id 5
60
+ npx nusus get-context --book-id 147927 --page-id 5
61
+ npx nusus get-book 147927
62
+ npx nusus get-author 44
63
+ npx nusus list-categories
64
+ npx nusus catalog
47
65
  ```
48
66
 
49
- The CLI emits JSON Lines with passage text, source metadata, citations, and direct Turath URLs. It also supports `--madhhab hanafi|maliki|shafii|hanbali` and `--books "title one,title two"`.
67
+ Default stdout is **JSONL** (one object per line, camelCase, every line has `type`). Use `--format text` for compact human lines. Diagnostics are JSON on **stderr** only. Unknown or command-inapplicable flags are rejected.
68
+
69
+ | Exit | Meaning |
70
+ | --- | --- |
71
+ | 0 | Success (including zero hits; find/search/retrieve emit a `meta` line; offline finders report `returned`, live search/retrieve report `totalMatches`) |
72
+ | 1 | Usage / invalid argument |
73
+ | 2 | Not found |
74
+ | 3 | Rate limit / HTTP / invalid response / timeout (`ABORTED`) / internal |
75
+
76
+ `page-id` is Turath’s internal page (`location.internalPage`), not the printed page. `search`/`retrieve` accept at most one `--book-id`, one `--author-id`, and one `--category-id` (filters may be combined). Offline `find-books` accepts repeated `--author-id`/`--category-id` and may omit the title query when those filters are set. `--timeout 0` disables the request timeout (max `600000`). There is no madhhab ranking or multi-book fanout in the CLI.
50
77
 
51
78
  ## Known limitations
52
79
 
53
- Book and category discovery uses a bundled snapshot of 8,124 Turath books scanned in March 2026 because Turath does not expose verified catalog endpoints. Newly added or changed upstream records may therefore be absent until the snapshot is refreshed. Author-name discovery is not yet available; catalog books retain their author IDs. Browser support is not claimed because the checked API responses do not advertise CORS support.
80
+ Book and category discovery uses a bundled snapshot of 8,124 Turath books scanned in March 2026 because Turath does not expose verified catalog endpoints. Newly added or changed upstream records may therefore be absent until the snapshot is refreshed.
81
+
82
+ Offline author discovery uses an ID→name map verified via official `GET /author` only (no fabricated names), plus live `getAuthor()` for full metadata. `getCatalogMetadata()` reports known book/author ID counts, resolved offline names, and unresolved author IDs. Re-hydrate or resume with `bun scripts/refresh-catalog.mjs authors` (resumable, rate-limit aware). Book listing refresh is fail-closed: `bun scripts/refresh-catalog.mjs books` refuses unofficial sources.
83
+
84
+ Browser support is not claimed because the checked API responses do not advertise CORS support.
54
85
 
55
86
  ## Development
56
87
 
57
88
  ```bash
58
89
  bun install
90
+ bun run build # CLI bin loads dist/; also auto-built by CLI tests if missing
59
91
  bun test
60
92
  bun run typecheck
61
- bun run build
62
- ```
63
93
 
94
+ # optional live contract (also scheduled via GitHub Actions)
95
+ bun run test:live
96
+
97
+ # official-API catalog tooling
98
+ bun scripts/refresh-catalog.mjs authors --limit 10
99
+ bun scripts/refresh-catalog.mjs books # fails closed on purpose
100
+ ```
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export { NususError } from "./errors.js";
2
2
  export type { NususErrorCode } from "./errors.js";
3
- export type { Author, AuthorSummary, Book, BookSummary, Category, CategorySummary, Passage, RetrievedContext, SearchPage, SourceLocation, TurathId, } from "./models.js";
3
+ export type { Author, AuthorSummary, Book, BookSummary, BookTocEntry, CatalogMetadata, Category, CategorySummary, Passage, PassageProvenance, RetrievedContext, RetrieveScope, SearchPage, SourceLocation, SourceLocator, TurathId, } from "./models.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,MAAM,EACN,aAAa,EACb,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,QAAQ,GACT,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,MAAM,EACN,aAAa,EACb,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,cAAc,EACd,aAAa,EACb,QAAQ,GACT,MAAM,aAAa,CAAC"}
package/dist/models.d.ts CHANGED
@@ -16,6 +16,11 @@ export type BookSummary = {
16
16
  id: string;
17
17
  title: string;
18
18
  };
19
+ export type BookTocEntry = {
20
+ title: string;
21
+ level?: number;
22
+ page?: number;
23
+ };
19
24
  export type Author = AuthorSummary & {
20
25
  provider: "turath";
21
26
  id: string;
@@ -29,6 +34,10 @@ export type Book = BookSummary & {
29
34
  category?: CategorySummary;
30
35
  description?: string;
31
36
  hasPdf?: boolean;
37
+ /** Normalized TOC from Turath book indexes when present. */
38
+ toc?: BookTocEntry[];
39
+ /** Volume labels from Turath book indexes when present. */
40
+ volumes?: string[];
32
41
  raw?: unknown;
33
42
  };
34
43
  export type SourceLocation = {
@@ -36,6 +45,31 @@ export type SourceLocation = {
36
45
  printedPage?: number;
37
46
  volume?: string;
38
47
  };
48
+ export type SourceLocator = {
49
+ bookId: string;
50
+ internalPage?: number;
51
+ printedPage?: number;
52
+ volume?: string;
53
+ url: string;
54
+ };
55
+ export type RetrieveScope = {
56
+ bookIds?: TurathId[];
57
+ authorIds?: TurathId[];
58
+ categoryIds?: TurathId[];
59
+ };
60
+ export type PassageProvenance = {
61
+ query: string;
62
+ scope?: RetrieveScope;
63
+ rank: number;
64
+ totalMatches: number;
65
+ truncated: boolean;
66
+ truncation?: "prefix" | "match-window";
67
+ contextPages: {
68
+ before: number;
69
+ after: number;
70
+ };
71
+ retrievedVia: "page" | "search-hit";
72
+ };
39
73
  export type Passage = {
40
74
  provider: "turath";
41
75
  book: BookSummary;
@@ -47,6 +81,8 @@ export type Passage = {
47
81
  headings: string[];
48
82
  url: string;
49
83
  citation: string;
84
+ locator?: SourceLocator;
85
+ provenance?: PassageProvenance;
50
86
  raw?: unknown;
51
87
  };
52
88
  export type SearchPage = {
@@ -59,4 +95,15 @@ export type RetrievedContext = {
59
95
  totalMatches: number;
60
96
  query: string;
61
97
  };
98
+ export type CatalogMetadata = {
99
+ scannedAt: string;
100
+ bookCount: number;
101
+ categoryCount: number;
102
+ /** Distinct author IDs referenced by the bundled book catalog. */
103
+ authorIdCount: number;
104
+ /** Bundled offline author names verified via official GET /author. */
105
+ authorNameCount: number;
106
+ /** Known catalog author IDs with no verified offline name (missing/empty upstream or not yet hydrated). */
107
+ unresolvedAuthorIdCount: number;
108
+ };
62
109
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,aAAa,GAAG;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,WAAW,GAAG;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,EAAE,cAAc,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const CATALOG_AUTHORS: readonly [number, string][];
2
+ //# sourceMappingURL=catalog-authors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog-authors.d.ts","sourceRoot":"","sources":["../../src/turath/catalog-authors.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EA89FtD,CAAC"}