Modular SDKs & Tooling
Fidel Tools is built as a series of modular packages. Install what you need locally, validate custom configurations, or query managed cloud telemetry.
@fidel-tools/core
TypeScriptThe core rule-based processing engine. Includes tokenization pipeline, stopwords filters, term weighting (TF-IDF), and stemmer orchestration.
Key Capabilities
- Tree-shakeable ESM/CommonJS compilation
- Deterministic rule execution flow
- Pipeline architecture for clean composition
- Full static TypeScript declarations out of the box
import { Pipeline } from '@fidel-tools/core';
import amPack from '@fidel-tools/lang-am';
const nlp = new Pipeline(amPack);
const analyzed = nlp.stem('ልጆቻቸውን');
// -> 'ልጅ'@fidel-tools/lang-am
TypeScriptThe comprehensive Amharic language pack. Outlines specific character mapping tables, labialized vowel reduction dictionaries, abbreviation expansions, and prefix/suffix morphological rules.
Key Capabilities
- 500+ Amharic stopwords pre-compiled
- Cycle-free labialization maps
- Standardized Ge'ez ASCII SERA rules configuration
- Abbreviation exceptions for complex lexical cases
import amPack from '@fidel-tools/lang-am';
console.log(amPack.stopwords.slice(0, 5));
// -> ['እነዚህ', 'እንደ', 'ነበር', 'ግን', 'ወደ']
console.log(amPack.charMap['ሃ']); // -> 'ሀ'fidel-tools
PythonNative Python port of the Amharic NLP pre-processing framework. Optimized for integration with machine learning libraries like PyTorch, HuggingFace, or SpaCy.
Key Capabilities
- Zero C-dependencies, pure Python
- Complies with Python >= 3.8
- Compatible with Pandas, NumPy pipelines
- Reflects 1:1 morphological parsing matching the TS SDK
from fidel_tools import Pipeline
from fidel_tools.lang.am import AmPack
nlp = Pipeline(AmPack())
result = nlp.stem("ልጆቻቸውን")
print(result) # -> "ልጅ"@fidel-tools/validate-pack
TypeScriptLinting, validation, and auto-fixing utility for checking the schema and logical correctness of custom language rules configuration packs.
Key Capabilities
- Detects circular mappings that cause infinite loops
- Verifies schema conformance with JSON validation
- Identifies overlapping stopwords and protected lexemes
- Includes a --fix CLI flag to automatically auto-deduplicate arrays
# Run pack validation CLI
validate-pack ./my-custom-pack.json
# Auto-fix duplicates & rule cycles
validate-pack --fix ./my-custom-pack.json@fidel-tools/db
TypeScriptMonorepo database connector package. Houses relational schema configurations, migration scripts, and telemetry adapters using Drizzle ORM and Neon Postgres client.
Key Capabilities
- Declarative relational schema for user authentication
- Drizzle migration runner configuration templates
- High-performance telemetry usage logs queries
- Drizzle pool client adapter configuration
import { db, schema } from '@fidel-tools/db';
import { eq } from 'drizzle-orm';
const activeUser = await db.query.users.findFirst({
where: eq(schema.users.id, userId)
});