The standalone version of Laravel's Blade templating engine for use outside of Laravel.

Maintainers

👁 jenssegers

Package info

github.com/jenssegers/blade

pkg:composer/jenssegers/blade

Fund package maintenance!

jenssegers

Open Collective

Statistics

Installs: 1 319 171

Dependents: 137

Suggesters: 3

Stars: 865

Open Issues: 38

v2.0.1 2024-03-16 21:41 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 7a31d61a6b1fe9cae5c61349dba435498dd8097c

templateviewlaravelrenderblade

This package is auto-updated.

Last update: 2026-06-18 17:16:45 UTC


README

👁 Latest Stable Version
👁 Coverage Status

The standalone version of Laravel's Blade templating engine for use outside of Laravel.

👁 Image

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