Syntax Entry
Add a Filament infolist entry for themeable syntax highlighting using highlight.js
Author:
Parallax
Documentation
Add a Filament infolist entry for themeable server-side syntax highlighting using tempestphp/highlight.
#Installation
Install the package via composer:
composer require parallax/filament-syntax-entry
Optionally, you can publish the views using
php artisan vendor:publish --tag="filament-syntax-entry-views"
#Upgrading from 1.x
There are a couple of important changes to be aware of when upgrading to version 2.x:
- PHP 8.3 is required for server-side syntax highlighting
- Highlight.js is no longer supported
- Theme selection has been replaced with the ability to create custom themes
#Quickstart
#Add the Infolist entry
Add the SyntaxEntry to the $infolist->schema() method.
<?php
namespace App\Filament\Resources;
use Parallax\FilamentSyntaxEntry\SyntaxEntry;
class ProductResource extends Resource
{
public static function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
SyntaxEntry::make('metadata'),
]);
}
}
#Setting the language
The default language value is set to json. To override this value you may use the language() method:
SyntaxEntry::make('metadata')
->language('json');
The following languages are currently available:
bladecssgdscripthtmljavascriptjsonphpsqltwigxmlyaml
#Creating a custom theme
You may override the default theme by using the theme() method:
SyntaxEntry::make('metadata')
->theme('smudge');
This will wrap the syntax component with a custom class like so:
syntax-entry-theme-smudge
The final step is to follow the tempestphp/highlight documentation on how to create your own theme, and use this in combination with Filament themes.
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Credits
#License
The MIT License (MIT). Please see License File for more information.
The author
From the same author
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Data Lens
Advanced Data Visualization for Laravel Filament - a premium reporting solution enabling custom column creation, sophisticated filtering, and enterprise-grade data insights within admin panels.
Padmission
Custom Fields
Eliminate custom field migrations forever. Let your users create and manage form fields directly in Filament admin panels with 20+ built-in field types, validation, and zero database changes.
Relaticle