Antivirus plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

Antivirus

Community

Antivirus for Filament: ClamAV upload scanning, quarantine, incident log and file security dashboard for Laravel.

Tags: Developer Tool
Supported versions:
5.x
John Michael Rivera Gonzalez avatar Author: John Michael Rivera Gonzalez

Package health

Beta

Automated checks of this plugin's Composer package

100 / 100
Security 100
Maintenance 100
Ecosystem 100
15 checks
  • Skipped: GitHub Actions pinned to SHA
  • Skipped: GitLab CI includes pinned to SHA
  • Passed: Open security advisories
  • Passed: Dependabot PR responsiveness — No open Dependabot PRs.
  • Skipped: Renovate MR responsiveness
  • Skipped: Dependabot or Renovate configured
  • Skipped: Dependency update cooldown configured
  • Passed: Provides a security policy
  • Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
  • Passed: Commit and release recency — Active: last commit 0 days ago; last release 0 days ago.
  • Passed: composer.lock not committed by library composer.lock is absent from the released dist archive.
  • Passed: Dist archive is lean
  • Passed: Current Laravel version supported — Package dependencies resolve together with current Laravel 13.0.
  • Passed: Current PHP version supported — Constraint ^8.2 supports current PHP 8.5.
  • Passed: Current Symfony version supported — Package dependencies resolve together with current Symfony 8.1.
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Powered by Plumb Last scanned 1 week ago

Documentation

Filament Antivirus — ClamAV upload scanning, quarantine and file security dashboard for Laravel.

Stable ^1.0 (MIT). Sibling of filament-cybersecurity (read-only posture). This plugin acts on files: scan, block uploads, quarantine.

#Features

  • Antivirus Dashboard — engine status, incidents, quarantine stats
  • ClamAV via clamdscan / clamscan (configurable)
  • Null driver for local dev without ClamAV
  • Upload validationAntivirusFileRule for Filament / Laravel forms
  • Quarantine — move infected files to storage/app/quarantine/
  • Incident logantivirus_incidents table
  • Artisan: antivirus:scan, antivirus:status
  • Facade: Antivirus::scanPath(), Antivirus::scanUpload()
  • ES / EN translations

#Requirements

Stack Versions
PHP 8.2+
Laravel 11.28+ / 12+ / 13+
Filament 5.x
ClamAV optional (recommended in production)

#Installation

composer require johnrivera7/filament-antivirus:^1.0
php artisan vendor:publish --tag="filament-antivirus-migrations"
php artisan migrate
php artisan vendor:publish --tag="filament-antivirus-config"

Register on your Filament panel:

use JohnRivera7\FilamentAntivirus\FilamentAntivirusPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        ->plugins([
            FilamentAntivirusPlugin::make()
                ->navigationGroup('Configuraciones')
                ->navigationLabel('Antivirus')
                ->navigationSort(7)
                ->permission(fn (): bool => auth()->user()?->hasAnyRole(['super_admin', 'admin']) ?? false),
        ]);
}

#Configuration

ANTIVIRUS_DRIVER=clamav          # clamav | null
ANTIVIRUS_QUARANTINE=true
CLAMAV_BINARY=clamscan
CLAMAV_CLAMDSCAN_BINARY=clamdscan
ANTIVIRUS_PREFER_CLAMDSCAN=true

#Upload validation

use JohnRivera7\FilamentAntivirus\Rules\AntivirusFileRule;

FileUpload::make('document')
    ->rules([new AntivirusFileRule()]);

#CLI

php artisan antivirus:status
php artisan antivirus:scan
php artisan antivirus:scan /path/to/dir --purge

#License

MIT © John Rivera

The author

John Michael Rivera Gonzalez avatar Author: John Michael Rivera Gonzalez

I am a full-stack developer focused on building reliable web platforms for education, enterprise, and business operations. I work mainly with Laravel and Filament, creating admin panels, reusable packages, and integrations that solve real production needs.

I also have a background in cybersecurity as an ethical hacker, which shapes how I design and review software: secure authentication flows, proper access control, hardening production environments, and thinking about real-world attack surfaces before they become problems.

I contribute to the Filament ecosystem by developing open-source panel plugins, with a strong focus on authentication, enterprise SSO, and tools that help teams manage complex workflows from a clean admin interface. I follow official Filament standards and aim to publish practical, well-documented packages that developers can adopt with confidence.

Beyond Filament, I develop Moodle plugins and customizations for e-learning platforms, including integrations, Microsoft Teams modules, learning activities, custom course formats, and automated cloud backup solutions. I also build Laravel applications for insurance, commercial, corporate, and agricultural management systems.

My infrastructure work includes high-availability setups with PostgreSQL clusters, GlusterFS, Nginx, and Consul, as well as Odoo ERP and POS implementations. I enjoy working across the full stack—from backend architecture and DevOps automation to polished admin interfaces and end-user workflows.

I publish open-source packages on Packagist and GitHub, and I plan to keep expanding my contributions to Filament with new panel plugins over time.

Plugins
7
Stars
17

From the same author