Skip to content
JOURNAL / INDEXPFXAMD — ENGINEERING NOTEBOOK

Building an interaction core

Why input recognition and motion physics belong in a reusable library, not inside each individual interface.

The interaction that appears on the screen is not the same thing as the mechanism that makes it work. A draggable object needs normalized input, gesture recognition, coordinates, constraints and a way to calculate what happens after release.

Separate the input from the motion.

PFx Interaction Core keeps the recognition and physics independent of a particular page or framework. Its core package handles drag, press, hover, values and spring stepping. The DOM adapter deals with pointer events, keyboard input, capture and scheduling; React bindings are optional.

Why that boundary matters.

An interface can decide what its movement looks like while the underlying mechanism stays consistent. The same spring primitive can return a thrown heading to its origin or animate an interactive control. The application owns its accessibility semantics and visual choreography.

The project is at version 0.1.0 and its public API may still change. The code and release archives are available on GitHub; the packages are not currently published to the npm registry.

REFERENCE / SOURCEExplore the source