Download the PHP package ruelluna/canvas-pointer without Composer
On this page you can find all versions of the php package ruelluna/canvas-pointer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ruelluna/canvas-pointer
More information about ruelluna/canvas-pointer
Files in ruelluna/canvas-pointer
Package canvas-pointer
Short Description A Filament field that allows users to click and point markers on an image.
License MIT
Homepage https://github.com/ruelluna/canvas-pointer
Informations about the package canvas-pointer
A Filament field that allows users to click and point to mark references on an image.

I have used it for a client that needs visual reprensentations to where the pains are located in the body. What is your use case? This field will produce a base-64 image and automatically convert it to a file stored in your configured storage disk, returning the URL to the image.
Installation
You can install the package via composer:
Usage
Storage Configuration
By default, the component saves images to the 'public' disk in the 'canvas-pointer' directory. You can customize these settings using the storageDisk()
and storageDirectory()
methods.
Static Configuration
Dynamic Configuration
Both storage disk and directory can be set dynamically using closures:
This allows you to customize the storage location based on runtime conditions, such as the current user, tenant, or other form data.
Image Creation Process
The Canvas Pointer field handles the image creation process automatically:
-
Canvas Interaction: When users click on the image, red dots are added to mark specific points.
-
Base64 Image Generation: After each interaction, the canvas (including the background image and all marked points) is converted to a base64-encoded image using Konva.js's
toDataURL()
method. -
Automatic File Conversion: When the form is submitted, the component:
- Detects that the field value is a base64 image
- Removes the base64 prefix (
data:image/png;base64,
) - Decodes the base64 string to binary data
- Generates a unique filename using UUID
- Saves the image to the configured storage disk and directory
- Returns the public URL of the saved file
- Database Storage: Only the image URL is stored in your database, not the large base64 string, which prevents database size issues.
Example of the saved image URL:
This process happens automatically - you don't need to write any additional code to handle the conversion from base64 to file URL.
Todos
- [ ] Automatically detect height and width
- [ ] Table Column Component
- [ ] Entry Component
- [ ]
npm
Konva dependency
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Ruel Luna
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of canvas-pointer with dependencies
filament/filament Version ^3.0
spatie/laravel-package-tools Version ^1.15.0