askerakbar/gpt-trix-editor

GPT Trix Editor package extends the default Trix editor features in the Filament PHP framework.

2.0.2 2024-09-01 08:55 UTC

This package is auto-updated.

Last update: 2024-11-08 08:42:17 UTC


README

The GPT Trix Editor is a form field component for the Filament PHP framework that enhances the Trix editor with OpenAI GPT features.

Latest Version on Packagist Total Downloads

Features:

New - Call ChatGPT API on selected/highlighted text 👇

Installation

You can install the package via composer:

composer require askerakbar/gpt-trix-editor

Quick Start

  1. Publish the configuration files by running the following commands:
php artisan vendor:publish --provider="OpenAI\Laravel\ServiceProvider"
php artisan vendor:publish --tag="gpt-trix-editor-config"
php artisan vendor:publish --tag="gpt-trix-editor-translations"
  1. We're using https://github.com/openai-php/laravel laravel package to call the OpenAI APIs, so you need to set your OpenAI API key in the .env file or in the config/openapi.php file:
OPENAI_API_KEY=YOUR_KEY

You can also set the GPT model in the .env

TRIX_GPT_MODEL=YOUR_MODEL
  1. Optionally, you can customize the configuration file at config/gpt-trix-editor.php. This includes adding more prompts to the menu dropdown, setting temperature and max_tokens.
  2. Clear the configuration cache to make sure your changes take effect: php artisan config:clear
  3. Done!

Usage

Import the field component:

use AskerAkbar\GptTrixEditor\Components\GptTrixEditor;

You can use the GPT Trix Editor field component like any other field component:

GptTrixEditor::make('content')->columnSpan('full');

By default, the GPT Toolbar Button is enabled in the GP Trix Editor. However, if you want to disable it, you can do so like this:

GptTrixEditor::make('content')->disableToolbarButtons([
    'gptTools',
])->columnSpan('full');

To do

  • ✅ Run the GPT actions on selected/highlighted text

Contribute / Report a bug / Security Vulnerabilities

If you would like to contriubte, please feel free to submit pull requests or open issues.

License

The MIT License (MIT). Please see License File for more information.