Antivirus by John Michael Rivera Gonzalez
CommunityAntivirus for Filament: ClamAV upload scanning, quarantine, incident log and file security dashboard for Laravel.
Author:
John Michael Rivera Gonzalez
Package health
Automated 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
Mía Theme
A warm theme for Filament v5 that looks after the parts other themes leave bare — empty states that say why a list is empty, error and maintenance pages that still feel like your panel, five sign-in layouts and an in-panel appearance page — over cream surfaces and serif headings, shipped pre-compiled with no build step.
Author:
John Michael Rivera Gonzalez
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
Featured Plugins
A selection of plugins curated by the Filament team
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
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
Custom Fields
Eliminate custom field migrations forever. Let your users create and manage form fields directly in Filament admin panels with 20+ built-in field types, validation, and zero database changes.
Relaticle