OpenE2EE for JavaScript
Build encrypted messaging into browser, Node.js, and Expo applications with explicit storage and transport boundaries.
The OpenE2EE JavaScript SDK is a portable implementation profile for applications that need encrypted messaging without handing private keys or plaintext to a required hosted service.
What the SDK owns
- Identity and prekey generation.
- Session establishment and ratcheting.
- Multi-device and group messaging state.
- Safety-number generation and comparison.
- Validation at storage, relay, and serialized-state boundaries.
What your application owns
- User identity and account policy.
- Runtime-specific secret storage.
- Delivery and public-prekey infrastructure.
- Encrypted attachment persistence.
- Trust verification and user experience.
Install and initialize
Create a client and select a runtime storage adapter.
Identity and trust
Understand composite identities, trust state, and safety numbers.
Runtime profiles
Choose browser, Node.js, or Expo adapters explicitly.
Commercial licensing
Compare AGPL and commercial production use.
Independent implementation profile
This project is not affiliated with Signal Messenger LLC or the Signal Foundation. Compatibility is a design direction and correctness oracle, not an unconditional promise of canonical Signal service interoperability.