HomePluginsToolsWorkflowAboutContact
GetSet

Premium UI/UX layout engines, customizable micro-interaction plugins, and high-performance components for modern web developers.

Plugins

  • Carousel
  • Select
  • Zoom
  • FlexoGrid
  • Sortable
  • Modal
  • Drawer
  • Tooltip
  • Popover
  • Toast
  • ContextMenu
  • Tabs
  • Accordion
  • Reveal
  • Autocomplete
  • Tags
  • Range
  • DatePicker
  • Upload
  • Cropper
  • Table
  • Tree
  • Editor

Company

  • Home
  • Plugins
  • Developer Tools
  • Showcase
  • Our Process
  • About Us
  • Contact

Policies

  • Terms and Conditions
  • Privacy Policy
  • Accessibility Policy
  • Cookie Policy

© 2026 GetSet. All rights reserved.

Crafted for frontend excellence.

Your Bundle

Your bundle is empty

Add plugins from the catalog to build one combined CDN link — like picking font families.

Browse plugins
Media Plugin

GS Cropper

Image cropper with aspect ratios, zoom/rotate/flip, drag-pan, circular crop, a grid overlay and canvas/blob/dataURL export.

Latest: v1.0.2
Downloads last month: 142
Visit Demo Website

Install Package

npm i @get-set/gs-cropper
or via CDN
<link rel="stylesheet" href="https://cdn.get-set.it/gs-cropper/latest/gs-cropper.min.css">
<script src="https://cdn.get-set.it/gs-cropper/latest/gs-cropper.min.js"></script>
Interactive Playground

Live Sandbox

Cropper.jsx
1
2
3
4
5
6
7
8
9
import Cropper from '@get-set/gs-cropper';

export default function App() {
  return (
    <Cropper>
      <div className="content">Your Cropper content</div>
    </Cropper>
  );
}
Live Preview
Crop me

Options

Configuration Values

Reference?Reference option.
Src?Image source URL. Native reads an existing `<img src>` if omitted.
Alt?Alt text for the image.
Cross Origin?Cross-origin attribute for the image (needed for tainted-free export).
Aspect Ratio?Aspect ratio of the crop box.
Initial Aspect Ratio?Initial aspect ratio applied only to the auto crop box.
View Mode?Boundary mode (Cropper.js parity): 0 none · 1 crop box within canvas · 2 image covers box · 3 image covers canvas.
Container Aspect Ratio?Fixed container aspect ratio (canvas).
Auto Crop?Initial auto crop area as a fraction (0–1) of the canvas.
Wheel Zoom Ratio?Wheel zoom sensitivity (ratio per wheel step).
Min Zoom?Minimum zoom scale (relative to fit).
Max Zoom?Maximum zoom scale (relative to fit).
Rotate Step?Rotation step (deg) for keyboard / toolbar rotate.
Nudge Step?Amount (px) the arrow keys nudge the crop box.
Min Crop Width?Minimum crop-box width in px.
Min Crop Height?Minimum crop-box height in px.
Max Crop Width?Maximum crop-box width in px.
Max Crop Height?Maximum crop-box height in px.
Overlay?Dimming style for the area outside the crop box.
Guides?Show the rule-of-thirds / guide lines inside the crop box.
Backdrop Type?Rich frame layer preset around the canvas.
Theme?Visual theme. `auto` follows prefers-color-scheme.
Accent Color?Accent color (CSS var --gsc-accent) for handles / focus ring.
Class Name?Extra class name applied to the container root.

Feature Flags

API Specifications

OptionTypeDefaultDescription
referencestringnoneReference.
srcstringnoneImage source URL. Native reads an existing `<img src>` if omitted.
altstringnoneAlt text for the image.
crossOrigin'' | 'anonymous' | 'use-credentials'noneCross-origin attribute for the image (needed for tainted-free export).
aspectRatioGSCropperAspectRatio'free'Aspect ratio of the crop box. Default: 'free'.
initialAspectRatioGSCropperAspectRationoneInitial aspect ratio applied only to the auto crop box.
circularbooleanfalseCircular (avatar) crop box + circular export mask. Default: false.
viewModeGSCropperViewMode1Boundary mode (Cropper.js parity): 0 none · 1 crop box within canvas · 2 image covers box · 3 image covers canvas. Default: 1.
backgroundbooleantrueShow a repeating background grid behind a transparent image. Default: true.
responsivebooleantrueKeep the cropper responsive on container resize. Default: true.
restorebooleantrueRe-render (restore crop) on window resize. Default: true.
containerAspectRationumbernoneFixed container aspect ratio (canvas). Number = w/h.
autoCropnumber | false0.8Initial auto crop area as a fraction (0–1) of the canvas. `false` starts with no crop box (the whole image). Default: 0.8.
initialCropPartial<GSCropData>noneExplicit initial crop rectangle in natural image pixels. Overrides autoCrop.
zoomablebooleantrueEnable zooming (wheel + pinch). Default: true.
zoomOnWheelbooleantrueEnable zoom on mouse wheel. Default: true (requires `zoomable`).
zoomOnPinchbooleantrueEnable pinch-to-zoom on touch. Default: true (requires `zoomable`).
wheelZoomRationumber0.1Wheel zoom sensitivity (ratio per wheel step). Default: 0.1.
minZoomnumber0.1Minimum zoom scale (relative to fit). Default: 0.1.
maxZoomnumber10Maximum zoom scale (relative to fit). Default: 10.
rotatablebooleantrueEnable rotation. Default: true.
flippablebooleantrueEnable horizontal/vertical flipping. Default: true.
rotateStepnumber90Rotation step (deg) for keyboard / toolbar rotate. Default: 90.
draggablebooleantrueAllow dragging the crop box across the image. Default: true.
movablebooleantrueAllow moving/panning the image behind the crop box. Default: true.
pannablebooleantrueAllow panning the image with a drag on the canvas. Default: true.
resizablebooleantrueAllow resizing the crop box via its handles. Default: true.
handlesbooleantrueToggle the crop-box resize handles. Default: true.
nudgeStepnumber1Amount (px) the arrow keys nudge the crop box. Default: 1.
minCropWidthnumber20Minimum crop-box width in px. Default: 20.
minCropHeightnumber20Minimum crop-box height in px. Default: 20.
maxCropWidthnumbernoneMaximum crop-box width in px.
maxCropHeightnumbernoneMaximum crop-box height in px.
overlayGSCropperOverlayType'dim'Dimming style for the area outside the crop box. Default: 'dim'.
guidesGSCropperGuidestrueShow the rule-of-thirds / guide lines inside the crop box. Default: true.
centerbooleantrueShow a center indicator cross in the crop box. Default: true.
backdropTypeGSCropperBackdropType'checkerboard'Rich frame layer preset around the canvas. Default: 'checkerboard'.
toolbarbooleanfalseShow the built-in toolbar (zoom / rotate / flip / reset). Default: false.
themeGSCropperTheme'auto'Visual theme. `auto` follows prefers-color-scheme. Default: 'auto'.
accentColorstringnoneAccent color (CSS var --gsc-accent) for handles / focus ring.
rtlbooleanfalseRight-to-left layout. Default: false.
disabledbooleanfalseDisable the whole cropper (no interaction). Default: false.
reducedMotion'auto' | boolean'auto'Honor prefers-reduced-motion. 'auto' | true | false. Default: 'auto'.
customClassGSCropperCustomClassnonePer-part class overrides.
classNamestringnoneExtra class name applied to the container root.
outputGSCropperOutputOptionsnoneDefault export options for getCroppedCanvas / getBlob / getDataURL.

Technical Features

Aspect Ratios

Free, fixed or preset crop ratios.

Zoom / Rotate / Flip

Full transform control of the image.

Circular Crop

Round crop mask for avatars.

Multi Export

Canvas, Blob or dataURL output.