Glossary
NPM Component
A reusable package published to the NPM registry that encapsulates functionality, UI or logic you can install straight into a JavaScript or TypeScript project. Ethora ships its chat and AI as NPM components you drop into your app.
General definition
An NPM component is a reusable software package published to the NPM (Node Package Manager) registry that encapsulates specific functionality, UI elements or business logic and can be installed and integrated into JavaScript/TypeScript projects. These packages work across frontend environments — vanilla JavaScript, React for web, React Native for mobile — and backend systems like Node.js, Express, Next.js and Nest.
In React, components behave much like functions: they accept inputs called props and return elements that determine what appears on screen. They range from simple utilities to complex UI, and typically ship pre-built and importable, configurable via props, documented with examples, version-managed through NPM, and TypeScript-ready.
Ethora’s NPM components
Ethora offers two main NPM components. The NPM Chat Component is a ready-to-use, customizable chat compatible with TypeScript, Node.js and React — providing real-time messaging, a modular structure, enterprise scalability and HIPAA/GDPR compliance, with private and group chats and end-to-end encryption built on WebSocket, XMPP and REST.
The NPM AI Chat Widget Component extends that with AI-powered conversation, LLM integration and context-aware chats — deploying without backend complexity. Both let developers build any chat use case into a product in hours rather than weeks or months. See the Chat SDK for details.