tempest / blade
PHP 8.4 compatible fork of jenssegers/blade: a standalone version of Laravel's Blade templating engine for use outside of Laravel.
Fund package maintenance!
tempestphp
Requires
- php: >=8.4
- illuminate/config: ^11.0
- illuminate/view: ^11.0
Requires (Dev)
- laravel/pint: ^1.13
- phpunit/phpunit: ^10.0
- tempest/debug: ^1.0@alpha
This package is auto-updated.
Last update: 2025-02-22 19:06:28 UTC
README
PHP 8.4 compatible fork of jenssegers/blade: a standalone version of Laravel's Blade templating engine for use outside of Laravel.
Installation
Install using composer:
composer require tempest/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 https://laravel.com/docs/11.x/views.
use Tempest\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.