- TypeScript 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| demo | ||
| docs | ||
| src | ||
| tests | ||
| .env.example | ||
| .gitignore | ||
| .npmignore | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| SECURITY.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
@karidea/webemailer-client
A zero-dependency, lightweight JavaScript and TypeScript client library for embedding contact and inquiry forms connected to the Karidea webemailer backend service.
Designed with European digital sovereignty and privacy standards (GDPR-compliant), the library provides universal browser compatibility across modern module bundlers (Vite, Webpack, Rollup) and plain HTML pages using <script> tags.
Key Highlights
- Zero Runtime Dependencies: Ultra-lightweight footprint with no external runtime libraries.
- Universal Distribution: Compiles to ESM (
webemailer-client.js), CommonJS (webemailer-client.cjs), and browser IIFE (webemailer-client.iife.jsexposingwindow.KarideaWebemailer). - Resilient UI State Management: Automatically locks form controls during in-flight network requests and unconditionally restores button/textarea interactivity in a
finallyblock upon completion, rate-limiting, or error. - Client-Side Validation & Length Checks: Pre-flight validation prevents empty submissions and oversized inputs (> 10,000 characters) without locking user controls or making unnecessary network roundtrips.
- Structured Transmission Receipts: Delivers delivery confirmation messages and technical transmission headers (timestamp, origin metadata) directly to application callbacks.
- Dual Transport Encoding: Supports both standard
application/x-www-form-urlencodedandapplication/jsonpayload formats. - Privacy by Design: Strictly zero telemetry, tracking beacons, or third-party client fingerprinting, adhering to GDPR standards.
Documentation & Guides
Detailed instructions are organized into dedicated guides for specific roles:
-
Customer Website Integration Guide: Complete instructions for website developers integrating the library into their websites, including npm package installation,
.npmrcregistry setup, bundler/plain HTML usage examples, full configuration reference (WebemailerOptions), and troubleshooting. -
Developer & Maintainer Guide: Technical reference for developers maintaining the library, building distribution bundles, running Vitest unit tests, and understanding the multi-target Vite build pipeline and Forgejo CI/CD release workflow.
-
Contributing Guidelines: Code of conduct, secret hygiene requirements, coding conventions, and Pull Request checklist for community contributors.
-
Security Policy: Responsible disclosure instructions and confidentiality policy.
License
MIT License. Copyright (c) 2026 Karidea Oy.