react-zoom-pan-pinch is a production React library (npm package, zero runtime dependencies beyond React) that adds zoom, pan, and pinch interactions to arbitrary HTML content. In production, TransformWrapper mounts a ZoomPanPinch imperative core instance that registers DOM event listeners (wheel, touch/pointer, keyboard) and shares state via React context; TransformComponent renders children with a CSS transform (translate/scale or configurable matrix) driven by that state. The data flow is: browser events â gesture handlers â state/bounds mutation â CSS transform on the content node, with ResizeObserver-driven recalculation when wrapper or content dimensions change. The package is consumed internally as: TransformWrapper/TransformComponent, auxiliary MiniMap, KeepScale, and Virtualize components, six hooks (useControls, useTransformEffect, useTransformInit, useTransformContext, useTransformComponent, useZoomPanPinch), and an imperative API (zoomIn, zoomOut, setTransform, resetTransform, fitToView, zoomToElement, panBy, clientToContent/contentToClient) exposed via ref, render props, or hooks.
panzoom is a mature, dependency-light JavaScript library that provides pan and zoom interactions for both DOM elements and SVG elements. The main entry point is index.js, which exposes a createPanZoom() factory that attaches mouse, touch, wheel, and keyboard event handling to a target element, orchestrates transform updates, and emits custom events such as 'pan', 'zoom', and 'transform'. Internally it uses a controller abstraction to render transforms either via CSS transforms for DOM nodes or SVG transform attributes, and it ships prebuilt dist bundles alongside a demo suite and a TypeScript declaration file. It is a library, not a standalone application, with no backend, CLI, or data pipeline components.
This repository is a collection of Tampermonkey userscripts for Chinese cloud storage services: Baidu Pan, Aliyun/AliDrive, Quark, Tianyi/189, LanZou, Xunlei, Weiyun, Caiyun, and 123Pan. In practice, the scripts do much more than the README's vague description of "resource search": they inject download-link buttons into cloud-drive pages, resolve private API endpoints to expose direct download URLs, auto-fill share passwords from local cache or a remote LeanCloud backend, generate Aria2 RPC pushes and BitComet bc:// links, and replace native web players with APlayer/ArtPlayer-based audio/video players. The įŽĄåŽļåŠ script additionally maintains a local cache of visited share links/passwords and provides a search dialog pointing at many third-party resource-search sites.