Skip to content

frozencap/react-native-zoom-toolkit

 
 

Repository files navigation

React Native Zoom Toolkit

A set of components and utilities for common pinch to zoom feature requirements

The most feature rich React Native library to solve common use cases of the pinch to zoom interaction, as well as providing barebones utilities for complex use cases, such as pinch to zoom React Native Skia's components.

Note

Are you watching from NPM's website? NPM's markdown renderer does not render videos, watch them on github.

SnapbackZoom ResumableZoom CropZoom Gallery
zoom1.mp4
zoom2.mp4
zoom3.mp4
zoom4.mp4

Features

  • Limitless: Smoothly zoom in and out any component you want, you're not limited to images only.
  • Performance: Smooth gesture interactions powered by Reanimated and Gesture Handler.
  • SnapBackZoom: Zoom in and snap back, this component automatically snaps back to its original position once the gesture ends, making it ideal for previews.
  • ResumableZoom: Pick up where you left last time! This component remembers your previous interactions with it, just the same way it works in your Android/IOS OS integrated gallery application, making it ideal for detail screens and gallery screens.
  • CropZoom: An ideal, practical and unopinionated component for image and video cropping needs.
  • Gallery: A practial gallery component which implements ResuambleZoom capabilities for all items in the list.
  • Mirror: Mirror the current pinch gesture transformations to any other component you want.
  • Expo Compatible: This library has been written in typescript only and supported modules by the expo SDK.

Documentation

To check out the docs, visit https://glazzes.github.io/react-native-zoom-toolkit/

Demo

The example app comes with five different examples from which you can learn from, see the Example app.

License

MIT License.

About

Smoothly zoom any image, video or component you want!

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 98.2%
  • JavaScript 1.8%