Usare l'editor Markdown di Mailcoach in Filament
Abbiamo rilasciato un nuovo pacchetto chiamato spatie/filament-markdown-editor. Questo pacchetto contiene l'editor Markdown di Mailcoach e lo rende facilmente installabile in Filament, un potente admin panel per le applicazioni Laravel.
In questo articolo voglio raccontarvi tutto al riguardo.
L'editor Markdown di Mailcoach
Per scrivere contenuti in Mailcoach mettiamo a disposizione diversi editor. C'è un editor WYSIWYG per gli utenti senza alcuna conoscenza tecnica. Se volete un controllo granulare, offriamo un editor HTML.
Se avete un background da sviluppatori, probabilmente conoscete Markdown, una versione semplificata di HTML. Mailcoach offre un potente editor Markdown che include l'upload delle immagini e l'evidenziazione automatica del codice. In questo articolo vedrete un esempio di come potete usare e generare facilmente markdown per la vostra newsletter basata su Mailcoach.
Sotto il cofano, l'editor Markdown di Mailcoach è basato su SimpleMDE con alcune modifiche per far funzionare l'evidenziazione del codice.
Usare l'editor Markdown di Mailcoach in Filament
In Mailcoach usiamo Filament come admin panel. L'articolo che state leggendo è stato scritto in Filament. Dato che pubblichiamo spesso articoli tecnici con frammenti di codice e immagini, volevamo usare il nostro editor Markdown all'interno di Filament.
Per questo motivo abbiamo estratto il nostro editor in un nuovo pacchetto chiamato spatie/filament-markdown-editor.
Una volta installato, potete usare Spatie\FilamentMarkdownEditor\MarkdownEditor proprio come qualsiasi altro elemento di form.
Ecco come potete usarlo nella funzione form di una resource di Filament.
use Spatie\FilamentMarkdownEditor\MarkdownEditor;
public static function form(Form $form): Form
{
return $form
->schema([
// other fields ...
MarkdownEditor::make('text')
->fileAttachmentsDisk('admin-uploads')
->fileAttachmentsVisibility('public')
->required(),
]);
}
Facoltativamente, potete aggiungere i metodi standard di Filament fileAttachmentsDisk, fileAttachmentsVisibility, … per configurare l'upload delle immagini.
Ecco come appare quel campo nel browser:
Per aggiungere un'immagine, basta trascinarla e rilasciarla nell'editor. L'immagine verrà caricata e verrà inserito un tag immagine che fa riferimento al vostro upload.
In conclusione
Se usate già Filament, sono sicuro che apprezzerete la gestione dei vostri contenuti con il nostro editor. Se usate Laravel Nova, sentitevi liberi di usare il nostro pacchetto come ispirazione per creare un editor simile.
Voglio ringraziare il mio collega Rias per aver creato questo editor e Dan Harrin per il suo aiuto nell'integrazione delle funzionalità di upload delle immagini di Filament.
Altri articoli recenti
Laravel AI 1.1 e 1.2: Agent Skills, Cohere e structured output più solidi
Le release 1.1.0 e 1.2.0 di laravel/ai portano gli Agent Skills, l'approvazione obbligatoria per i tool built-in e nuovi provider come Cohere e Laya self-hosted. Sul fronte qualità arrivano i fix allo structured output per Bedrock e il supporto alle provider options. Aggiornati anche i modelli di default, con Claude 4.7+ che ignora i sampling params.
Laravel 13.35.0: scheduler più controllabile, code più flessibili e response Markdown
Laravel 13.35.0 porta Schedule::alwaysOnOneServer(), il supporto a schedule:interrupt per i comandi di lunga durata, --memory in percentuale per queue:work e il nuovo metodo markdown() sulla response factory. Tante piccole migliorie anche a test, view compilate in parallelo e dischi local.
BashBox: un interprete Bash in sandbox per agenti AI in PHP
BashBox è un interprete bash scritto in puro PHP che permette di eseguire gli script generati dagli agenti AI senza mai ricorrere a proc_open, exec o shell_exec. Ogni comando è una classe PHP che lavora su un filesystem virtuale, con limiti di esecuzione, quote disco e accesso di rete configurabili. Ideale per chi sviluppa agenti con il Laravel AI SDK o altre librerie simili.