PHPackages                             jarda256sparktech/nova-image-cropper - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. jarda256sparktech/nova-image-cropper

ActiveLibrary

jarda256sparktech/nova-image-cropper
====================================

A Laravel Nova field.

2.2(6y ago)023MITVuePHP &gt;=7.1.0

Since Aug 31Pushed 6y agoCompare

[ Source](https://github.com/jarda256sparktech/nova-image-cropper)[ Packagist](https://packagist.org/packages/jarda256sparktech/nova-image-cropper)[ RSS](/packages/jarda256sparktech-nova-image-cropper/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (22)Used By (0)

Image Field with built-in cropper for Laravel Nova
==================================================

[](#image-field-with-built-in-cropper-for-laravel-nova)

This field extends Image Field adding a handy cropper to manipulate images. Can be configurable in the same way as a [File field in Nova](https://nova.laravel.com/docs/1.0/resources/file-fields.html).

### Demo

[](#demo)

[![Demo](https://camo.githubusercontent.com/9b16f0ae34717ca2ae17ecb259889e884983c5ea5416de381d588fedd7362d38/687474703a2f2f672e7265636f726469742e636f2f397562574462714e4e4c2e676966)](https://camo.githubusercontent.com/9b16f0ae34717ca2ae17ecb259889e884983c5ea5416de381d588fedd7362d38/687474703a2f2f672e7265636f726469742e636f2f397562574462714e4e4c2e676966)

### Install

[](#install)

Run this command into your nova project: `composer require r64/nova-image-cropper`

### Add it to your Nova Resource:

[](#add-it-to-your-nova-resource)

```
use R64\NovaImageCropper\ImageCropper;

ImageCropper::make('Photo'),
```

### Update form

[](#update-form)

In order to edit the existing image saved in the model, ImageCroper uses the preview method to return a base64 encoded image. You can either use the default implementation or override it as long as you return a base64 image.

```
use R64\NovaImageCropper\ImageCropper;

ImageCropper::make('Photo')
        ->preview(function () {
            if (!$this->value) return null;

            $url = Storage::disk($this->disk)->url($this->value);
            $filetype = pathinfo($url)['extension'];
            return 'data:image/' . $filetype . ';base64,' . base64_encode(file_get_contents($url));
        });
```

### Options

[](#options)

#### Avatar mode

[](#avatar-mode)

You can add a rounded mask to the preview and the cropper

```
ImageCropper::make('Photo')->avatar()
```

#### Custom aspect ratio

[](#custom-aspect-ratio)

Define the fixed aspect ratio of the crop box. By default, the crop box is free ratio.

- Type: Number
- Default: NaN

```
ImageCropper::make('Photo')->aspectRatio(16/9)
```

### Localization

[](#localization)

Set your translations in the corresponding xx.json file located in `/resources/lang/vendor/nova`

```
...

  "Edit Image": "Editar Imagen",
  "Cancel Crop": "Cancelar Recorte",
  "Change Image": "Cambiar Imagen",
  "Done": "Hecho",
  "Click here or drop the file to upload": "Click aquí o arrastra el archivo para comenzar la subida"
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 95.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~18 days

Recently: every ~35 days

Total

20

Last Release

2462d ago

Major Versions

0.0.1 → 2.0.02019-08-05

### Community

Maintainers

![](https://www.gravatar.com/avatar/f71c6ea3113e431c6cb3a1b44b247db164fdacc63a31995f71c510682579ef38?d=identicon)[jarda256](/maintainers/jarda256)

---

Top Contributors

[![beliolfa](https://avatars.githubusercontent.com/u/12644599?v=4)](https://github.com/beliolfa "beliolfa (22 commits)")[![cretueusebiu](https://avatars.githubusercontent.com/u/1517945?v=4)](https://github.com/cretueusebiu "cretueusebiu (1 commits)")

---

Tags

laravelnova

### Embed Badge

![Health badge](/badges/jarda256sparktech-nova-image-cropper/health.svg)

```
[![Health](https://phpackages.com/badges/jarda256sparktech-nova-image-cropper/health.svg)](https://phpackages.com/packages/jarda256sparktech-nova-image-cropper)
```

###  Alternatives

[optimistdigital/nova-multiselect-field

A multiple select field for Laravel Nova.

3403.5M7](/packages/optimistdigital-nova-multiselect-field)[coreproc/nova-notification-feed

A Laravel Nova package that adds a notification feed in your Nova app.

10149.1k](/packages/coreproc-nova-notification-feed)[inspheric/nova-defaultable

Default values for Nova fields when creating resources and running resource actions.

51174.8k1](/packages/inspheric-nova-defaultable)[cybercog/laravel-nova-ban

A Laravel Nova banning functionality for your application.

40199.8k](/packages/cybercog-laravel-nova-ban)[insenseanalytics/nova-server-monitor

A Laravel Nova tool for Spatie's Server Monitor library.

6546.9k](/packages/insenseanalytics-nova-server-monitor)[datomatic/nova-detached-actions

A Laravel Nova tool to allow for placing actions in the Nova toolbar detached from the checkbox selection mechanism.

11229.2k](/packages/datomatic-nova-detached-actions)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
