Antivirus
CommunityAntivirus for Filament: ClamAV upload scanning, quarantine, incident log and file security dashboard for Laravel.
Author:
John Michael Rivera Gonzalez
Package health
BetaAutomated checks of this plugin's Composer package
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.lockis 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.2supports current PHP8.5. -
Passed:
Current Symfony version supported
—
Package dependencies resolve together with current Symfony
8.1.
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
.
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 validation —
AntivirusFileRulefor Filament / Laravel forms - Quarantine — move infected files to
storage/app/quarantine/ - Incident log —
antivirus_incidentstable - 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
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.
From the same author
Cybersecurity
A read-only security posture dashboard that audits your Laravel environment, routes, Redis, queues, PHP runtime, and risky Composer packages, then scores findings with remediation guidance. Versions: 5.x
Author:
John Michael Rivera Gonzalez
Flow
Integrate Flow (Chile) payments into Filament with a credentials UI, HMAC signing helpers, and checkout redirects.
Author:
John Michael Rivera Gonzalez
SAML2 Okta
Adds SAML2 single sign-on to your Filament panel with a full admin UI for IdP configuration, certificate management, user provisioning, SAML field mapping, and a customizable login button for Okta, Azure AD, Google Workspace, Auth0, and other standard identity providers.
Author:
John Michael Rivera Gonzalez
Transbank Webpay
Integrate Transbank Webpay Plus payments into Filament with a credentials UI, official SDK helpers, and POST token_ws redirects.
Author:
John Michael Rivera Gonzalez
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Blueprint
Filament Blueprint is a premium Laravel Boost extension that helps AI agents produce accurate, detailed implementation plans and security reports for Filament apps.
Filament
Advanced Tables (formerly Filter Sets)
Supercharge your tables with powerful features like user-customizable views, quick filters, multi-column sorting, advanced table searching, convenient view management, and more. Compatible with Resource Panel Tables, Relation Managers, Table Widgets, and Table Builder!
Kenneth Sese