jenssegers / blade by jenssegers

The standalone version of Laravel's Blade templating engine for use outside of Laravel.
624,203
771
25
Package Data
Maintainer Username: jenssegers
Package Create Date: 2015-08-23
Package Last Update: 2024-03-18
Home Page: https://jenssegers.com
Language: PHP
License: MIT
Last Refreshed: 2024-04-18 15:20:34
Package Statistics
Total Downloads: 624,203
Monthly Downloads: 14,743
Daily Downloads: 555
Total Stars: 771
Total Watchers: 25
Total Forks: 119
Total Open Issues: 26

Blade

Latest Stable Version Build Status Coverage Status

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.1/blade.

use Jenssegers\Blade\Blade;

$blade = new Blade('views', 'cache');

echo $blade->make('homepage', ['name' => 'John Doe']);

Now you can easily create a directive by calling the compiler() function

$blade->compiler()->directive('datetime', function ($expression) {
    return "<?php echo with({$expression})->format('F d, Y g:i a'); ?>";
});

{{-- In your Blade Template --}}
<?php $dateObj = new DateTime('2017-01-01 23:59:59') ?>
@datetime($dateObj)

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