trecenode/filament-mermaid-field
Composer 安装命令:
composer require trecenode/filament-mermaid-field
包简介
Filament Mermaid Field
README 文档
README
A custom field for Filament that allows creating and visualizing Mermaid diagrams with zoom and pan functionality created by 13Node.com
Features
- ✨ Integrated text editor with Filament
- 🖼️ Real-time Mermaid diagram rendering
- 🔍 Interactive zoom and pan using local files
- 🌙 Light and dark theme support
- 📱 Responsive design
- 🚀 Easy Livewire integration
Installation
- Install the package:
composer require trecenode/filament-mermaid-field
- Publish the assets:
php artisan vendor:publish --tag=filament-mermaid-field-assets
This will copy the CSS and JavaScript files to your public directory.
Usage
In your Resource or Form
use Trecenode\FilamentMermaidField\FilamentMermaidField; FilamentMermaidField::make('diagram_content') ->label('Mermaid Diagram') ->placeholder('graph TD\n A[Start] --> B[Process]\n B --> C[End]') ->rows(10)
Complete example
<?php namespace App\Filament\Resources; use Filament\Forms; use Filament\Resources\Resource; use Trecenode\FilamentMermaidField\FilamentMermaidField; class DiagramResource extends Resource { public static function form(Form $form): Form { return $form ->schema([ Forms\Components\TextInput::make('title') ->required() ->maxLength(255), FilamentMermaidField::make('content') ->label('Diagram Content') ->placeholder('graph TD\n A[Start] --> B{Condition?}\n B -->|Yes| C[Process A]\n B -->|No| D[Process B]\n C --> E[End]\n D --> E') ->rows(15) ->required(), Forms\Components\Textarea::make('description') ->label('Description') ->rows(3), ]); } }
Mermaid Diagram Examples
Flowchart
graph TD
A[Start] --> B{Condition?}
B -->|Yes| C[Process A]
B -->|No| D[Process B]
C --> E[End]
D --> E
Sequence Diagram
sequenceDiagram
participant A as Client
participant B as Server
A->>B: Request
B-->>A: Response
Class Diagram
classDiagram
class Animal {
+String name
+eat()
}
class Dog {
+bark()
}
Animal <|-- Dog
Development
Local Development Setup
- Clone the repository
- Run
composer install - Install assets:
php artisan vendor:publish --tag=filament-mermaid-field-assets ### Project Structure - `src/` - PHP source code - `resources/views/` - Blade views - `resources/js/` - JavaScript source files - `resources/css/` - CSS source files ## Changelog * **1.1** - Local assets support, UI/UX improvements, Filament asset integration * **1.0** - First version, only works if row is called "content" ## Credits - [Danilo Ulloa](https://github.com/trecenode) - [Mermaid.js](https://mermaid.js.org/) - Diagram library - [svg-pan-zoom](https://github.com/ariutta/svg-pan-zoom) - Pan and zoom functionality ## License The MIT License (MIT). Please see [License File](LICENSE) for more information.
trecenode/filament-mermaid-field 适用场景与选型建议
trecenode/filament-mermaid-field 是一款 基于 JavaScript 开发的 Composer 扩展包,目前已累计 17 次下载、GitHub Stars 达 2, 最近一次更新时间为 2025 年 03 月 18 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 trecenode/filament-mermaid-field 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 trecenode/filament-mermaid-field 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 17
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 6
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-03-18