GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - leafsphp/blade: 🔪 Leaf's implementation of Laravel Blade (Adapted from jenssegers/blade)

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

85 Commits
85 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
src
src
 
 
tests
tests
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
README.md
README.md
 
 
alchemy.yml
alchemy.yml
 
 
composer.json
composer.json
 
 

Repository files navigation



Leaf Blade





Latest Stable Version Total Downloads License

Leaf's adaptation of Laravel's Blade templating engine for use outside of Laravel, with extra directives for the Leaf ecosystem.

Installation

Install using composer:

composer require leafs/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/12.x/blade.

use Leaf\Blade;

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

You can also initialise it globally and point to template directories later.

$blade = new Blade;

// somewhere, maybe in a different file
$blade->configure("app/views", "app/views/cache");
echo $blade->make('index', ['name' => 'Michael Darko'])->render();

Alternatively you can use the shorthand method render:

echo $blade->render('index', ['name' => 'Michael Darko']);

We can have this as our template index.blade.php

<!Doctype html>
<html>
    <head>
        <title>{{ $name }}</title>
    </head>
    <body>
        <div class="container">{{ $name }}</div>
    </body>
</html>

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.

About

🔪 Leaf's implementation of Laravel Blade (Adapted from jenssegers/blade)

leafphp.dev/docs/frontend/blade

Topics

bladeleafphpphptemplates

Resources

Readme

Code of conduct

Code of conduct

Contributing

Contributing
Activity
Custom properties

Stars

4 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.