PDF Viewer
CommunityPreview PDF documents either saved in the database or in the form of your resource.
Author:
João Paulo Leite Nascimento
Package health
BetaAutomated checks of this plugin's Composer package
15 checks
- Passed: GitHub Actions pinned to SHA
- Skipped: GitLab CI includes pinned to SHA
- Passed: Open security advisories
- Passed: Dependabot PR responsiveness — No stale Dependabot PRs.
- Skipped: Renovate MR responsiveness
- Passed: Dependabot or Renovate configured
- Passed: 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 150 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. - Skipped: Current Symfony version supported
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
- Features & Screenshots
- Compatibility
- Installation
- Usage in form field
- Usage in infolist entry
- Testing
- Changelog
- Contributing
- Security Vulnerabilities
- Credits
- License
FilamentPHP package to show pdf documents with records saved in the database or show documents without a database in the form of your resource.

#Features & Screenshots
- Form Field: Show a pdf document viewer in a form field.
- Infolist Entry: Show a pdf document viewer in a infolist entry.
- Support: Laravel 11 and Filament 3.x
#Compatibility
| Package Version | Filament Version |
|---|---|
| 1.x | 3.x |
| 2.x | 4.x |
| 3.x | 5.x |
#Installation
You can install the package via composer:
composer require joaopaulolndev/filament-pdf-viewer:^1.0
Optionally, you can publish the views using
php artisan vendor:publish --tag="filament-pdf-viewer-views"
#Usage in form field
use Joaopaulolndev\FilamentPdfViewer\Forms\Components\PdfViewerField;
public static function form(Form $form): Form
{
return $form
->schema([
PdfViewerField::make('file')
->label('View the PDF')
->minHeight('40svh')
]);
}
#Usage in infolist entry
use Joaopaulolndev\FilamentPdfViewer\Infolists\Components\PdfViewerEntry;
public static function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
PdfViewerEntry::make('file')
->label('View the PDF')
->minHeight('40svh')
]);
}
Optionally, you can use anothe methods to set the pdf viewer
use Joaopaulolndev\FilamentPdfViewer\Infolists\Components\PdfViewerEntry;
public static function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
PdfViewerEntry::make('file')
->label('View the PDF')
->minHeight('40svh')
->fileUrl(Storage::url('dummy.pdf')) // Set the file url if you are getting a pdf without database
->columnSpanFull()
]);
}
Optionally, you can use section to set the pdf viewer
use Joaopaulolndev\FilamentPdfViewer\Infolists\Components\PdfViewerEntry;
public static function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
\Filament\Infolists\Components\Section::make('PDF Viewer')
->description('Prevent the PDF from being downloaded')
->collapsible()
->schema([
PdfViewerEntry::make('file')
->label('View the PDF')
->minHeight('40svh')
->fileUrl(Storage::url('dummy.pdf')) // Set the file url if you are getting a pdf without database
->columnSpanFull()
]);
]);
}
#Testing
composer test
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Contributing
Please see CONTRIBUTING for details.
#Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
#Credits
#License
The MIT License (MIT). Please see License File for more information.
The author
João Paulo is a self-taught full-stack developer who loves PHP, Laravel and Filament. He is a Brazilian developer that loves to contribute to open-source projects.
From the same author
Edit Env
Edit your environment file directly from the Filament panel.
Author:
João Paulo Leite Nascimento
Edit Profile
A package to edit and delete profile easily to use, simple and fast.
Author:
João Paulo Leite Nascimento
World Clock
A beautiful card widget to display world clocks by timezone.
Author:
João Paulo Leite Nascimento
General Settings
Create really fast and easily general settings for your app.
Author:
João Paulo Leite Nascimento
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
Spotlight Pro
Browse your Filament Panel with ease. Filament Spotlight Pro adds a Spotlight/Raycast like Command Palette to your Filament Panel.
Dennis Koch
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