Skip to main content

Overview

Unleash Commerce Admin uses Filament v5 for the admin panel. It’s designed to be fully customizable and extensible.

Extension Points

The admin package provides several extension mechanisms:

1. Filament Resources

Replace or extend Filament Resources to customize how data is managed in the admin panel.

2. Policies

Implement custom authorization policies to control who can perform what actions.

3. Filament Pages

Create custom pages for specialized functionality beyond standard CRUD operations.

4. Widgets & Components

Build custom widgets and components for dashboard visualization.

5. Manifests

Use FilamentResourceManifest and FilamentPolicyManifest to swap implementations.

Using Manifests

The admin package provides manifests to manage contract-to-implementation mappings:
// Swap a resource implementation
$manifest = $this->app->make(FilamentResourceManifest::class);
$manifest->replace(
    ProductResourceContract::class,
    CustomProductResource::class
);

// Swap a policy implementation
$policyManifest = $this->app->make(FilamentPolicyManifest::class);
$policyManifest->replace(
    ProductPolicyContract::class,
    CustomProductPolicy::class
);

Best Practices

  • Always implement the contract interface when customizing resources or policies
  • Use the manifest system to ensure compatibility with upgrades
  • Test your customizations thoroughly
  • Keep customizations focused and single-responsibility
  • Use Filament’s built-in components for consistency
Explore the sections below to learn how to create custom resources and policies.