
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
esperanto-analyzer
Advanced tools
Modern TypeScript morphological analyzer for Esperanto text with comprehensive part-of-speech identification
Modern TypeScript morphological analyzer for Esperanto text with comprehensive part-of-speech identification and linguistic analysis capabilities.
npm install @vaporjawn/esperanto-analyzer
// CommonJS
const { analyzeWord, analyzeSentence } = require('@vaporjawn/esperanto-analyzer');
// ESM
import { analyzeWord, analyzeSentence } from '@vaporjawn/esperanto-analyzer';
// Analyze a single word
const result = analyzeWord('librojn');
console.log(result.partOfSpeech); // 'Noun'
console.log(result.morphology.isPlural); // true
console.log(result.morphology.isAccusative); // true
// Analyze a sentence
const sentence = analyzeSentence('Mi legas la belan libron');
console.log(sentence.statistics.totalWords); // 5
console.log(sentence.words[0].partOfSpeech); // 'Pronoun'
import {
MorphologicalAnalyzer,
MorphologicalSentenceAnalyzer,
VerbMorphologicalAnalyzer
} from '@vaporjawn/esperanto-analyzer';
// Use specific analyzers directly
const verbAnalyzer = new VerbMorphologicalAnalyzer();
const result = verbAnalyzer.analyze('kuranta');
console.log(result.morphologicalFeatures);
// Output: { tense: 'present', voice: 'active', mood: 'participle' }
See the complete working example in demo.js:
node demo.js
This demonstrates all major features:
Main analyzer class providing high-level interface.
analyzeWord(word: string): AnalysisResult - Analyze single wordanalyzeSentence(sentence: string): SentenceAnalysisResult - Analyze complete sentencegetMultipleAnalyses(word: string): AnalysisResult[] - Get all possible analysesisValidEsperanto(text: string): boolean - Validate Esperanto textgetPartOfSpeechSummary(text: string): Record<string, number> - Get POS statisticsinterface AnalysisResult {
word: string;
partOfSpeech: PartOfSpeech;
morphology: MorphologicalFeatures;
confidence: number;
alternatives: AnalysisResult[];
}
interface MorphologicalFeatures {
readonly case?: 'nominative' | 'accusative';
readonly number?: 'singular' | 'plural';
readonly tense?: 'past' | 'present' | 'future';
readonly mood?: 'indicative' | 'conditional' | 'imperative' | 'infinitive' | 'participle';
readonly voice?: 'active' | 'passive';
readonly degree?: 'positive' | 'comparative' | 'superlative';
readonly type?: string;
}
The analyzer uses a sophisticated confidence calculation system:
Each analyzer specializes in detecting specific morphological features:
npm run build
This creates three output formats:
dist/types/ - TypeScript type definitionsdist/esm/ - ES modules for modern bundlersdist/cjs/ - CommonJS for Node.js compatibilitynpm test # Run all tests
npm run test:watch # Watch mode
npm run test:coverage # Coverage report
npm run lint # Check code style
npm run lint:fix # Fix auto-fixable issues
npm run format # Format code with Prettier
npm run typecheck # Verify TypeScript types
This TypeScript version maintains API compatibility with enhanced features:
@vaporjawn/esperanto-analyzergit checkout -b feature-namenpm testMIT License - see LICENSE file for details.
Based on the original Python Esperanto analyzer with significant enhancements for modern TypeScript development. Special thanks to the Esperanto community for linguistic guidance and validation.
Saluton al ĉiuj Esperantistoj! 🌍✨
FAQs
Modern TypeScript morphological analyzer for Esperanto text with comprehensive part-of-speech identification
The npm package esperanto-analyzer receives a total of 9 weekly downloads. As such, esperanto-analyzer popularity was classified as not popular.
We found that esperanto-analyzer demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.