jenssegers / blade
The standalone version of Laravel's Blade templating engine for use outside of Laravel.
                                    Fund package maintenance!
                                                                            
                                                                                                                                        jenssegers
                                                                                    
                                                                            
                                                                                                                                        Open Collective
                                                                                    
                                                                
Installs: 1 064 600
Dependents: 137
Suggesters: 2
Security: 0
Stars: 859
Watchers: 23
Forks: 137
Open Issues: 37
pkg:composer/jenssegers/blade
Requires
- php: >=8.1
- illuminate/config: ^9.0|^10.0|^11.0
- illuminate/view: ^9.0|^10.0|^11.0
Requires (Dev)
- laravel/pint: ^1.13
- phpunit/phpunit: ^10.0
README
The standalone version of Laravel's Blade templating engine for use outside of Laravel.
Installation
Install using composer:
composer require jenssegers/blade
Usage
Create a Blade instance by passing it the folder(s) where your view files are located, and a cache folder. Render a template by calling the make method. More information about the Blade templating engine can be found on http://laravel.com/docs/5.8/blade.
use Jenssegers\Blade\Blade; $blade = new Blade('views', 'cache'); echo $blade->make('homepage', ['name' => 'John Doe'])->render();
Alternatively you can use the shorthand method render:
echo $blade->render('homepage', ['name' => 'John Doe']);
You can also extend Blade using the directive() function:
$blade->directive('datetime', function ($expression) { return "<?php echo with({$expression})->format('F d, Y g:i a'); ?>"; });
Which allows you to use the following in your blade template:
Current date: @datetime($date)
The Blade instances passes all methods to the internal view factory. So methods such as exists, file, share, composer and creator are available as well. Check out the original documentation for more information.
Integrations
- Phalcon Slayer Framework comes out of the box with Blade.