PHPackages                             customberg/customberg-php - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. customberg/customberg-php

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

customberg/customberg-php
=========================

0.18(11mo ago)20141↓100%1MITJavaScriptPHP ^8.0 | ^8.1 | ^8.2 | ^8.3 | ^8.4

Since Dec 31Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/customberg/customberg-php)[ Packagist](https://packagist.org/packages/customberg/customberg-php)[ Docs](https://github.com/customberg/customberg-php)[ RSS](/packages/customberg-customberg-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (5)Versions (14)Used By (0)

Demo GIF

[![](customberg-demo.gif?raw=true)](customberg-demo.gif?raw=true)

Instalation
===========

[](#instalation)

```
composer require customberg/customberg-php
```

Add vendor files to your project (CSS, JS, Config, Views):

```
php artisan vendor:publish --provider="VanOns\Laraberg\LarabergServiceProvider"
php artisan vendor:publish --provider="Customberg\PHP\CustombergServiceProvider"
```

Model Setup
===========

[](#model-setup)

The model that you want to use this block editor should have:

```
use VanOns\Laraberg\Traits\RendersContent;

class Page extends Model
{
    use RendersContent;
}
```

In the backpack crud controller you must create the crud field like this:

```
CRUD::field('content')
    ->label('Page content')
    ->type('customberg')
    ->view_namespace('customberg::');
```

Usage
=====

[](#usage)

Create a new block with the `make:block` command:

```
php artisan make:block AwesomeBlock
```

Then edit the block field definition in `app/Blocks/AwesomeBlock.php` file, and the block view in `resources/views/blocks/cb-awesome-block.blade.php`.

Checkout [/example/app/Blocks/EverySingleField.php](https://github.com/customberg/customberg-php/blob/main/example/app/Blocks/EverySingleField.php) for a full example with every field type.

Update
======

[](#update)

After an update, get the latest assets using:

```
# update source
composer require customberg/customberg-php
# update public assets
php artisan vendor:publish --tag="customberg-assets" --force
php artisan vendor:publish --provider="VanOns\Laraberg\LarabergServiceProvider" --tag="public" --force
```

Example project
===============

[](#example-project)

```
git clone https://github.com/customberg/customberg-php
cd customberg-php/example
docker compose up -d
docker compose exec php su app -c 'cd example; composer install'
docker compose exec php su app -c 'cd example; cp .env.example .env; php artisan key:generate'
docker compose exec nginx su app -c 'cd /app/example/public/; ln -s ../storage/app/public storage'
```

Navigate to  and press login.

Enjoy !

Roadmap:
========

[](#roadmap)

✅A checkbox field✅A custom js field☐Switch field☐Radio field☐Slider field☐Google Maps field☐Documentation !☐Icon picker fieldChangelog:
==========

[](#changelog)

### v0.17 - 2024-10-15

[](#v017---2024-10-15)

- Replace str\_replace\_limit implementation because there is a character limit error

### v0.16 - 2024-10-14

[](#v016---2024-10-14)

- New field type: `custom` for custom js field with React.createElement
- Checkout [/example/app/Blocks/CustomField.php](https://github.com/customberg/customberg-php/blob/main/example/app/Blocks/CustomField.php) for an example with summernote for Backpack V5 (TODO: update to V6)

### v0.15 - 2024-09-26

[](#v015---2024-09-26)

- New field types: `checkbox`, `textarea`, `number`, `email`, `url`
- New property `placeholder` for text fields
- New property `hint` and `hint_html` for all fields that show a small helper text
- Checkout [/example/app/Blocks/EverySingleField.php](https://github.com/customberg/customberg-php/blob/main/example/app/Blocks/EverySingleField.php) for a full example

### v0.14 - 2024-08-07

[](#v014---2024-08-07)

- Bugfix: Preview API while rendering a block with multilanguage, when i'm selecting the new language that does not have translation saved.

### v0.13 - 2024-07-08

[](#v013---2024-07-08)

- Allow laravel 11 installation

### v0.12 - 2023-11-09

[](#v012---2023-11-09)

- Bugfix error cannot redeclare str\_replace\_limit

### v0.11 - 2023-11-08

[](#v011---2023-11-08)

- Update requirements to laravel 10

### v0.10 - 2023-04-02

[](#v010---2023-04-02)

- Added file extension validation to `upload_image`.
    Use `'allowed_types' => ['png', 'jpg', 'webp', 'svg'],`
- Added `upload_file` for files without preview.
    Use `'multiple' => true,` if you want multiple files in the same field.

### v0.9 - 2023-01-01

[](#v09---2023-01-01)

- Multilanguage fine tuning, made configurable language list and bugfixing
- Multilanguage only supports fields `text` and `rich_text`, and works inside repeatable field.

### v0.8 - 2022-12-31

[](#v08---2022-12-31)

- Fine tuning for repeatable field frontend
- Added buttons to move and duplicate a item inside repeatable
- Added example block for repeatable

### v0.7 - 2022-12-30

[](#v07---2022-12-30)

- First version published to packagist.org ! 🎉🥳
- Only available fields are: `text, rich_text, color, upload_image`
- Repeatable is present but untested. Multilanguage present but untested and hardcoded.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance51

Moderate activity, may be stable

Popularity21

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~73 days

Recently: every ~61 days

Total

13

Last Release

346d ago

PHP version history (4 changes)0.7PHP ^8.0

0.11PHP ^8.0 | ^8.1 | ^8.2

0.13PHP ^8.0 | ^8.1 | ^8.2 | ^8.3

0.18PHP ^8.0 | ^8.1 | ^8.2 | ^8.3 | ^8.4

### Community

Maintainers

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

---

Top Contributors

[![AndreiTelteu](https://avatars.githubusercontent.com/u/5564199?v=4)](https://github.com/AndreiTelteu "AndreiTelteu (56 commits)")

---

Tags

backpack-for-laravelblock-editorgutenberglaravellaravelgutenbergblock editorlarabergcustomberg

### Embed Badge

![Health badge](/badges/customberg-customberg-php/health.svg)

```
[![Health](https://phpackages.com/badges/customberg-customberg-php/health.svg)](https://phpackages.com/packages/customberg-customberg-php)
```

###  Alternatives

[spatie/laravel-livewire-wizard

Build wizards using Livewire

4061.0M4](/packages/spatie-laravel-livewire-wizard)[tonysm/importmap-laravel

Use ESM with importmap to manage modern JavaScript in Laravel without transpiling or bundling.

148399.8k1](/packages/tonysm-importmap-laravel)[laracraft-tech/laravel-useful-additions

A collection of useful Laravel additions!

58109.4k](/packages/laracraft-tech-laravel-useful-additions)[worksome/exchange

Check Exchange Rates for any currency in Laravel.

123544.7k](/packages/worksome-exchange)[hydrat/filament-table-layout-toggle

Filament plugin adding a toggle button to tables, allowing user to switch between Grid and Table layouts.

6292.3k1](/packages/hydrat-filament-table-layout-toggle)[ralphjsmit/laravel-helpers

A package containing handy helpers for your Laravel-application.

13704.6k2](/packages/ralphjsmit-laravel-helpers)

PHPackages © 2026

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