Filament Json Field is a Laravel Filament JSON Field integration with CodeMirror support, providing a powerful and feature-rich JSON editor for your Filament forms and infolists.
| Package | PHP | Laravel | Filament Forms | Filament Infolists | Filament Support |
|---|---|---|---|---|---|
| v13.0 (alpha) | ^8.3, ^8.4 | ^13.0 | ^4.0 | ^4.0 | ^4.0 |
| v12.0 | ^8.2, ^8.3, ^8.4 | ^12.0 | ^3.3 | ^3.3 | ^3.3 |
| v2.0 | ^8.1 | ^11.0 | ^3.2 | ^3.2 | ^3.2 |
| v1.0 | ^8.1 | ^10.45, ^11.0 | ^3.2 | ^3.2 | ^3.2 |
You can install the package via composer:
composer require codebar-ag/laravel-filament-json-field
php artisan filament:assetsuse CodebarAg\FilamentJsonField\Forms\Components\JsonInput;
...
public function form(Form $form): Form
{
return $form
->schema([
JsonInput::make('json')
->label('JSON Data')
->lineNumbers(true)
->lineWrapping(true)
->autoCloseBrackets(true)
->darkTheme(true)
->foldingCode(true)
->foldedCode(true) // Folded code will fold the code on form load
->readOnly(false), // Set to true to make the field read-only
]);
}use CodebarAg\FilamentJsonField\Infolists\Components\JsonEntry;
...
public function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
JsonEntry::make('json')
->label('JSON Data')
->lineNumbers(true)
->lineWrapping(true)
->autoCloseBrackets(true)
->darkTheme(true)
->foldingCode(true)
->foldedCode(true), // Folded code will fold the code on form load
]);
}The following options are currently supported:
| Option | Supported | Description |
|---|---|---|
| Line Numbers | β | Display line numbers in the editor |
| Line Wrapping | β | Enable line wrapping for long lines |
| Auto Close Brackets | β | Automatically close brackets and quotes |
| Dark Theme | β | Enable dark theme styling |
| Folding Code | β | Enable code folding functionality |
| Folded Code | β | Start with code folded (forms only) |
| Read Only | β | Make the field read-only (forms only) |
- CodeMirror Integration: Powered by CodeMirror 5 for excellent JSON editing experience
- Syntax Highlighting: Full JSON syntax highlighting with validation
- Error Handling: Built-in JSON validation with user-friendly error messages
- Responsive Design: Works seamlessly across different screen sizes
- Customizable: Extensive configuration options for different use cases
- Filament 4.0 Ready: Fully compatible with the latest Filament version
Copy your own phpunit.xml-file.
cp phpunit.xml.dist phpunit.xmlRun the tests:
./vendor/bin/pestnode bin/buildNote: there is no output, but the build will be in the dist directory.
Please see CHANGELOG for recent changes.
Please see CONTRIBUTING for details.
composer test./vendor/bin/pintPlease review our security policy on reporting security vulnerabilities.
- Rhys Lees
- Sebastian Fix
- All Contributors
- Skeleton Repository from Spatie
- Laravel Package Training from Spatie
The MIT License (MIT). Please have a look at License File for more information.
