@teambition-fe/domino v0.2.0
@teambition-fe/domino
A DOM mutation synchronization implementation for concurrent execution contexts.
Purpose: Transfer DOM manipulation complexity to a background thread while maintaining synchronization with the main thread through efficient mutation propagation.
This project is derived from the original implementation @ampproject/worker-dom.
Use Cases: 1. Third-party content integration with isolation guarantees 2. Asynchronous rendering optimization for non-critical UI updates 3. Concurrent document state management with priority execution control
Installation
npm install @teambition-fe/domino
Core Capabilities
Thread Bridging Architecture
Enables cross-thread DOM synchronization through message passing protocols
Partial DOM Compliance
Implements critical DOM interfaces for state synchronization:
- Element/TextNode mutation tracking
- Property change propagation
- Event delegation system
Modular Communication
Pluggable transport layer supporting various concurrent execution models
Compatibility Profile
DOM API Coverage
Fundamental DOM operations including element creation/modification and basic tree operations. See compatibility matrixfor detailed support status.
Browser Support
Targets modern ECMAScript environments with recent evergreen browser capabilities. Legacy browser support requires appropriate compilation toolchain configuration.
Development Prerequisites
- Node.js LTS (18+ recommended)
- TypeScript 4.0+
- Module bundler with worker orchestration support
Contribution Guidelines
Quality Standards
- Type-safe implementation with strict null checks
- Comprehensive test coverage for cross-thread operations
- Benchmark-driven performance optimization
Security Model
- Sandboxed execution context isolation
- Input validation layers
- Memory management safeguards
License
Distributed under Apache License 2.0.