zoom.js is a jQuery plugin for image zooming that provides smooth zoom interactions similar to those on Medium.
The plugin solves the problem of displaying images at larger sizes with a polished interaction model. When a user clicks an image marked with the data-action="zoom" attribute, the image smoothly transitions to an enlarged view. The implementation handles dismissal through multiple intuitive methods: pressing the escape key, clicking away from the image, or scrolling. The tool also respects meta key modifiers, opening images in a new tab when the user holds command on Mac or control on Windows, and supports linking to a separate higher-resolution image via the data-original attribute for these meta-clicks.
The plugin suits projects that want to add Medium-style image interactions without building zoom functionality from scratch. It requires jQuery and the transition.js file from Bootstrap as dependencies. The tool is intended for modern browsers from Internet Explorer 9 onward. Developers should be aware that this is a straightforward image zoom implementation focused on the interaction pattern rather than advanced features like gesture support or responsive image handling.
The project shows minimal ongoing development activity, with no recent commits or active maintenance indicated. The codebase remains available and functional for those who want to adopt the zoom interaction pattern it demonstrates, but potential users should understand that they are working with a stable but unmaintained library.