BidiLens v0.1.0
First public web beta
BidiLens is a standards-aligned, conservative bidirectional-text toolkit for mixed RTL/LTR content. It helps web applications render Persian, Arabic, Hebrew, Urdu, English, code, URLs, and other mixed-direction text predictably while preserving a strict no-op path for ordinary pure-LTR text.
Install
npm install @bidilens/coreChoose only the adapters you need, for example:
npm install @bidilens/dom
npm install @bidilens/react
npm install @bidilens/vue
npm install @bidilens/sveltePublished packages
@bidilens/core@bidilens/spec@bidilens/dom@bidilens/html@bidilens/markdown@bidilens/playwright@bidilens/react@bidilens/svelte@bidilens/terminal@bidilens/vue@bidilens/web-component@bidilens/cli
Highlights
- Unicode-aware paragraph direction and mixed-script analysis
- Plain-text, HTML, Markdown, DOM, terminal, and framework adapters
- Conservative pure-LTR no-op behavior, including exact-reference preservation where the API contract permits
- Existing author intent is respected by default
- Incremental/streaming support and protection against unsafe bidi controls
- Browser visual regression coverage across Chromium, Firefox, and WebKit
- Reproducible Unicode data generation and a 918-case conformance/regression corpus
- MIT licensed
Release verification and supply chain
- The tagged source is commit
8132ee86800bcb85ae906f211f5ee79e4748edf1. - The publication workflow completed successfully and verified every registry SHA-512 integrity value against its retained tarball.
- All 12 npm packages include npm-generated SLSA provenance.
- Future publishing is bound to GitHub Actions trusted publishing (OIDC); the temporary bootstrap token was revoked and package settings disallow token-based publication.
- This release includes the exact 12 npm tarballs,
npm-release-manifest.jsonwith SHA-256/SHA-512 evidence, and a validated CycloneDX 1.7 SBOM. - A clean external consumer installed all packages from the public registry and passed runtime, CLI, mixed-direction, streaming, and pure-LTR no-op smoke tests with zero reported npm audit vulnerabilities.
Transparency note: @bidilens/core@0.1.0 was accepted by npm during an earlier attempt from parent commit 8caf5aa after registry propagation exceeded the workflow's former 60-second wait. The final successful workflow reproduced the exact core tarball and verified its immutable registry SHA-512; the remaining 11 packages were published from the tagged commit.
Current limits
This is a web/JavaScript beta, not a universal operating-system text renderer. Native mobile, desktop, editor, and model-output integrations require platform-specific adapters. Automatic inference cannot recover every ambiguous author intent, and applications must still choose correct semantic markup and review security-sensitive transformations. Independent security, accessibility, native-language, and large-scale production reviews remain welcome and are not claimed as completed. Publication is not evidence of third-party or enterprise adoption.