TypeFX.js is a modern typewriter effect library implemented in plain JavaScript (with TypeScript source). It provides a fluent API for simulating typing, deleting, cursor movement, and text selection in DOM elements. The library is designed to be framework-agnostic and can be used in vanilla JavaScript, React, Vue, or any other web environment that supports the DOM. The core of the library is the `TypeFX` class, which manages an internal queue of actions to sequence asynchronous operations. It ensures only one instance per DOM element using a WeakMap and supports chaining of methods like `.type()`, `.wait()`, `.delete()`, etc. The library also allows customization of typing speed, caret appearance, and entrance/exit animations via the Web Animations API. The library is distributed as ES modules, CommonJS, and UMD formats via Rollup, with no runtime dependencies. It includes a comprehensive test suite that uses a custom fake DOM implementation to run tests in Node.js, demonstrating good testing practices for DOM-dependent code.