0.2.0 • Published 5 months ago

@teambition-fe/domino v0.2.0

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
5 months ago

@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

  1. Node.js LTS (18+ recommended)
  2. TypeScript 4.0+
  3. 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.

0.1.0

5 months ago

0.2.0

5 months ago

0.0.2

5 months ago

0.0.2-dev

5 months ago

0.0.1-dev

5 months ago