geo-sot/filament-env-editor

Access .env file though Filament admin panel

Fund package maintenance!
GeoSot

0.0.5 2024-10-21 17:23 UTC

This package is auto-updated.

Last update: 2024-12-21 17:38:20 UTC


README

Latest Version on Packagist Total Downloads

Banner

A Simple .env file Viewer plugin for your Filament Panels.

Provides features like, manage current .env variables, and a handy backup functionality page


Installation

You can install the package via composer:

composer require geo-sot/filament-env-editor

Usage

Add the GeoSot\FilamentEnvEditor\FilamentEnvEditorPlugin to your panel config.

use GeoSot\FilamentEnvEditor\FilamentEnvEditorPlugin;

class AdminPanelProvider extends PanelProvider
{
    public function panel(Panel $panel): Panel
    {
        return $panel
            // ...
            ->plugin(
                FilamentEnvEditorPlugin::make()
            );
    }
}

Configuration

Customizing the navigation item

FilamentEnvEditorPlugin::make()
    ->navigationGroup('System Tools')
    ->navigationLabel('My Env')
    ->navigationIcon('heroicon-o-cog-8-tooth')
    ->navigationSort(1)
    ->slug('env-editor')

Hiding keys

Some keys you may consider to be particularly sensitive and don't wish to expose them, even through this package. You can hide them through this interface:

FilamentEnvEditorPlugin::make()
    ->hideKeys('APP_KEY', 'BCRYPT_ROUNDS')

Authorization

If you would like to prevent certain users from accessing the logs page, you should add a authorize callback in the FilamentLEnvEditorPlugin chain.

FilamentEnvEditorPlugin::make()
  ->authorize(
      fn () => auth()->user()->isAdmin()
  )

Customizing the log page

To customize the "env-editor" page, you can extend the GeoSot\FilamentEnvEditor\Pages\ViewEnv page and override its methods.

use GeoSot\FilamentEnvEditor\Pages\ViewEnv as BaseViewEnvEditor;

class ViewEnv extends BaseViewEnvEditor
{
    // Your implementation
}
use App\Filament\Pages\ViewEnv;

FilamentEnvEditorPlugin::make()
  ->viewPage(CustomEnvPage::class)

Contributing

Please see CONTRIBUTING for details.

License

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