PHP Classes

BladeOne: Standalone template engine that compiles into PHP

Recommend this page to a friend!
     
  Info   View files Files   Install with Composer Install with Composer   Download Download   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
StarStarStarStar 78%Total: 490 This week: 1All time: 5,878 This week: 41Up
Version License PHP version Categories
bladeone 1.77MIT/X Consortium ...5.4PHP 5, Cache, Templates, Code Generation
Description 

Author

This package is a standalone template engine that compiles into PHP.

It is a version of the Blade template engine that uses as single PHP file and can be used with different frameworks or no framework at all.

It can compiles templates to a PHP file. Templates use the ASP.NET Razor and Moustache syntax.

Innovation Award
PHP Programming Innovation award nominee
July 2016
Number 5
ASP.NET Razor is a format for defining templates that are processed on the server side by .NET applications.

This package is template engine that compiles templates into PHP code from template files in either the ASP.NET Razor and Moustache syntax.

Manuel Lemos
Picture of Jorge Castro
  Performance   Level  
Name: Jorge Castro <contact>
Classes: 32 packages by
Country: Chile Chile
Age: 48
All time rank: 12483 in Chile Chile
Week rank: 14 Up1 in Chile Chile Up
Innovation award
Innovation award
Nominee: 14x

Winner: 2x

Details

Logo

BladeOne Blade Template Engine

BladeOne is a standalone version of Blade Template Engine that uses a single PHP file and can be ported and used in different projects. It allows you to use blade template outside Laravel.

Packagist Total Downloads [Maintenance]() [composer]() [php]() [php]() [php]() [CocoaPods]()

> NOTE: So far it's apparently the only one project that it's updated with the latest version of Blade 8 (January 2022). > Dynamic blade components are not supported (reason: performance purpose) and custom features aimed for blade, but everything else is supported [missing](#missing.

Comparison with Twig

> (spoiler) Twig is slower. 😊

| | First Time Time | First Time Memory | Overload First Time | Second Time | Second Time Memory | |----------|-----------------|-------------------|---------------------|-------------|--------------------| | BladeOne | 1962ms | 2024kb | 263 | 1917ms | 2024kb | | Twig | 3734ms | 2564kb | 123 | 3604ms | 2327kb |

What it was tested?. It was tested two features (that are the most used): It was tested with an array with 1000 elements and tested many times.

Comparison with Twig

NOTE about questions, reports, doubts or suggesting:

✔ If you want to open an inquiry, do you have a doubt, or you find a bug, then you could open an ISSUE. Please, don't email me (or send me PM) directly for question or reports. Also, if you want to reopen a report, then you are open to do that. I will try to answer all and every one of the question (in my limited time).

Some example

| ExampleTicketPHP | Example cupcakes | Example Search | Example Editable Grid | |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------| | <img src="https://camo.githubusercontent.com/3c938f71f46a90eb85bb104f0f396fcba62b8f4a/68747470733a2f2f74686570726163746963616c6465762e73332e616d617a6f6e6177732e636f6d2f692f3436696b7061376661717677726533797537706a2e6a7067" alt="example php bladeone" width="200"/> | <img src="https://github.com/EFTEC/example.cupcakes/raw/master/docs/result.jpg" alt="example php bladeone cupcakes" width="200"/> | <img src="https://github.com/EFTEC/example-search/raw/master/img/search_bootstrap.jpg" alt="example php bladeone search" width="200"/> | <img src="https://github.com/EFTEC/example-php-editablegrid/raw/master/docs/final.jpg" alt="example php bladeone search" width="200"/> |

https://www.southprojects.com

Manual

PHP 5.x support?

This version does not support PHP 5.x anymore. However, you can use the old version that is 100% functional with PHP 5.6 and higher.

Laravel blade tutorial

You can find some tutorials and example on the folder Examples.

You could also check the Wiki

About this version

By standard, The original Blade library is part of Laravel (Illuminate components) and to use this template library, you require install Laravel and Illuminate-view components. The syntax of Blade is pretty nice and bright. It's based in C# Razor (another template library for C#). It's starting to be considered a de-facto standard template system for many PHP (Smarty has been riding off the sunset since years ago) so, if we can use it without Laravel then it's a big plus for many projects. In fact, in theory, it is even possible to use with Laravel. Exists different versions of Blade Template that runs without Laravel, but most requires 50 or more files, and those templates add a new level of complexity, so they are not removing Laravel but hiding:

  • More files to manage.
  • Changes to the current project (if you want to integrate the template into an existent one)
  • Incompatibilities amongst other projects.
  • Slowness (if your server is not using op-cache)
  • Most of the code in the original Blade is used for future use, including the chance to use a different template engine.
  • Some Laravel legacy code.

This project uses a single file called BladeOne.php and a single class (called BladeOne). If you want to use it then include it, creates the folders and that's it!. Nothing more (not even namespaces)*[]: It is also possible to use Blade even with Laravel or any other framework. After all, BladeOne is native, so it's possible to integrate into almost any project.

Why to use it instead of native PHP?

Separation of concerns

Let’s say that we have the next code

//some PHP code
// some HTML code
// more PHP code
// more HTML code.

It leads to a mess of a code. For example, let’s say that we oversee changing the visual layout of the page. In this case, we should change all the code, and we could even break part of the programming. Instead, using a template system works in the next way:

// some php code
ShowTemplate();

We are separating the visual layer from the code layer. As a plus, we could assign a non-php-programmer in charge to edit the template, and he/she doesn’t need to touch or know our php code.

Security

Let’s say that we have the next exercise (it’s a dummy example)

$name=@$_GET['name'];
echo "my name is ".$name;

It could be separates as two files:

$name=@$_GET['name'];
include "template.php";
// template.php
echo "my name is ".$name;

Even for this simple example, there is a risk of hacking. How? A user could send malicious code by using the GET variable, such as html or even javascript. The second file should be written as follows:

 // template.php
echo "my name is ".html_entities($name);

html_entities should be used in every single part of the visual layer (html) where the user could inject malicious code, and it’s a real tedious work. BladeOne does it automatically.

// template.blade.php
My name is {{$name}}

Easy to use

BladeOne is focused on an easy syntax that it's fast to learn and to write, while it could keep the power of PHP.

Let's consider the next template:

<select>
    <? foreach($countries as $c) { ?>
        <option value=<? echo html_entities($c->value); ?> > <? echo html_entities($c->text); ?></option>
    <? } ?>
</select>

With BladeOne, we could do the same with

<select>
    @foreach($countries as $c)
        <option value={{$c->value}} >{{echo html_entities($c->text)}}</option>
    @nextforeach
</select>

And if we use thehtml extension we could even reduce to

@select('id1')
    @items($countries,'value','text','','')
@endselect()

Performance

This library works in two stages.

The first is when the template calls the first time. In this case, the template compiles and store in a folder. The second time the template calls then, it uses the compiled file. The compiled file consist mainly in native PHP, so the performance is equals than native code. since the compiled version IS PHP.

Scalable

You could add and use your own function by adding a new method (or extending) to the BladeOne class. NOTE: The function should start with the name "compile"

protected function compileMyFunction($expression)
{
    return $this->phpTag . "echo 'YAY MY FUNCTION IS WORKING'; ?>";
}

Where the function could be used in a template as follows

@myFunction('param','param2'...)

Alternatively, BladeOne allows running arbitrary code from any class or method if its defined.

{{SomeClass::SomeMethod('param','param2'...)}}

Install (pick one of the next one)

1) Download the file manually then unzip (using WinRAR,7zip or any other program) https://github.com/EFTEC/BladeOne/archive/master.zip 2) git clone https://github.com/EFTEC/BladeOne 3) Composer. See usage 4) wget https://github.com/EFTEC/BladeOne/archive/master.zip unzip master.zip

Usage

If you use composer, then you could add the library using the next command (command line)

composer require eftec/bladeone

If you don't use it, then you could download the library and include it manually.

Explicit definition

use eftec\bladeone\BladeOne;

$views = __DIR__ . '/views';
$cache = __DIR__ . '/cache';
$blade = new BladeOne($views,$cache,BladeOne::MODE_DEBUG); // MODE_DEBUG allows to pinpoint troubles.
echo $blade->run("hello",array("variable1"=>"value1")); // it calls /views/hello.blade.php

Where $views is the folder where the views (templates not compiled) will be stored. $cache is the folder where the compiled files will be stored.

In this example, the BladeOne opens the template hello. So in the views-folder it should exist a file called hello.blade.php

views/hello.blade.php:

<h1>Title</h1>
{{$variable1}}

Implicit definition

In this mode, it uses the folders `__DIR__/views` and `__DIR__/compiles`, also it uses the mode as MODE_AUTO.

use eftec\bladeone\BladeOne;

$blade = new BladeOne(); // MODE_DEBUG allows to pinpoint troubles.
echo $blade->run("hello",array("variable1"=>"value1")); // it calls /views/hello.blade.php

Fluent

use eftec\bladeone\BladeOne;

$blade = new BladeOne(); // MODE_DEBUG allows to pinpoint troubles.
echo $blade->setView('hello')    // it sets the view to render
           ->share(array("variable1"=>"value1")) // it sets the variables to sends to the view            
           ->run(); // it calls /views/hello.blade.php

Filter (Pipes)

It is possible to modify the result by adding filters to the result.

Let's say we have the next value $name='Jack Sparrow'

$blade=new BladeOne();
$blade->pipeEnable=true; // pipes are disable by default so it must be enable.
echo $blade->run('template',['name'=>'Jack Sparrow']);

Our view could look like:

 {{$name}}  or {!! $name !!} // Jack Sparrow

What if we want to show the name in uppercase?.

We could do in our code $name=strtoupper('Jack Sparrow'). With Pipes, we could do the same as follows:

 {{$name | strtoupper}} // JACK SPARROW 

We could also add arguments and chain methods.

 {{$name | strtoupper | substr:0,5}} // JACK

You can find more information on https://github.com/EFTEC/BladeOne/wiki/Template-Pipes-(Filter)

Security (optional)

require "vendor/autoload.php";

Use eftec\bladeone;

$views = __DIR__ . '/views';
$cache = __DIR__ . '/cache';
$blade=new bladeone\BladeOne($views,$cache,BladeOne::MODE_AUTO);

$blade->setAuth('johndoe','admin'); // where johndoe is an user and admin is the role. The role is optional

echo $blade->run("hello",array("variable1"=>"value1"));

If you log in using blade then you could use the tags @auth/@endauth/@guest/@endguest

@auth
    // The user is authenticated...
@endauth

@guest
    // The user is not authenticated...
@endguest

or

@auth('admin')
    // The user is authenticated...
@endauth

@guest('admin')
    // The user is not authenticated...
@endguest

Extensions Libraries (optional)

BladeOneCache Documentation

https://github.com/eftec/BladeOneHtml

Calling a static methods inside the template.

Since 3.34, BladeOne allows to call a static method inside a class.

Let's say we have a class with namespace \namespace1\namespace2

namespace namespace1\namespace2 {
    class SomeClass {
        public static function Method($arg='') {
            return "hi world";
        }
    }
}

Method 1 PHP Style

We could add a "use" in the template. Example:

Add the next line to the template

@use(\namespace1\namespace2)

and the next lines to the template (different methods)

{{SomeClass::Method()}}
{!! SomeClass::Method() !!}
@SomeClass::Method()

> All those methods are executed at runtime

Method 2 Alias

Or we could define alias for each class.

php code:

    $blade = new BladeOne();
    // with the method addAliasClasses
    $blade->addAliasClasses('SomeClass', '\namespace1\namespace2\SomeClass');
    // with the setter setAliasClasses
    $blade->setAliasClasses(['SomeClass'=>'\namespace1\namespace2\SomeClass']);
    // or directly in the field
    $blade->aliasClasses=['SomeClass'=>'\namespace1\namespace2\SomeClass'];

Template:

{{SomeClass::Method()}}
{!! SomeClass::Method() !!}
@SomeClass::Method()

> We won't need alias or use for global classes.

Named argument (since 3.38)

BladeOne allows named arguments. This feature must be implemented per function.

Let's say the next problem:

It is the old library BladeOneHtml:

@select('id1')
    @item('0','--Select a country--',"",class='form-control'")
    @items($countries,'id','name',"",$countrySelected)
@endselect

And it is the new library:

@select(id="aaa" value=$selection values=$countries alias=$country)
    @item(value='aaa' text='-- select a country--')
    @items( id="chkx" value=$country->id text=$country->name)
@endselect

The old method select only allows a limited number of arguments. And the order of the arguments is important.

The new method select allows adding different types of arguments

Command Line (CLI)

docs/cli.png

BladeOne (since the version v4.2) allows to run some operations via command line (CLI)

How to run it?

  • Go to your home path and call the PHP script as follows:
php vendor/bin/bladeonecli    # windows/linux/macos
# or you could execute the script as:
./vendor/bin/bladeonecli.bat  # windows
./vendor/bin/bladeonecli      # linux/macos

Or change you folder according to your installation.

And you can set the syntax as follows:

  • -templatepath <templatepath> (optional) the template-path (view paths). * Example: '/folder/views' or 'views' (relative)
  • -compilepath <compilepath> (optional) the compile-path. * Example: '/folder/compiles or 'compiles' (relative)
  • -clearcompile It deletes the content of the compile-path
  • -createfolder It creates the "compile" and "template" folders
  • -check It checks the library

Clear the compile-folder

php vendor/lib/eftec/bladeone/lib/BladeOne.php -clearcompile

Check the folders, if the folder exists, if it has the right permissions, etc.

php vendor/lib/eftec/bladeone/lib/BladeOne.php -check

Example to clear the compile-folder using a custom compile path

php vendor/lib/eftec/bladeone/lib/BladeOne.php -clearcompile -compilepath mycompile # relative path to the current location
php vendor/lib/eftec/bladeone/lib/BladeOne.php -clearcompile -compilepath /var/mycompile # absolute path (Linux/MacOS)
php vendor/lib/eftec/bladeone/lib/BladeOne.php -clearcompile -compilepath c:\var\mycompile # absolute path (Windows)

BladeOneHtml

It is a new extension to BladeOne. It allows creating HTML components easily and with near-to-native performance.

It uses a new feature of BladeOne: named arguments

Example to create a select:

@select(id="aaa" value=$selection values=$countries alias=$country)
    @item(value='aaa' text='-- select a country--')
    @items( id="chkx" value=$country->id text=$country->name)
@endselect

https://github.com/eftec/BladeOneHtml

You could download it or add it via Composer

> composer require eftec/bladeonehtml

Collaboration

You are welcome to use it, share it, ask for changes and whatever you want to. Just keeps the copyright notice in the file.

Future

  • Blade locator/container

License

MIT License. BladeOne (c) 2016-2023 Jorge Patricio Castro Castillo Blade (c) 2012 Laravel Team (This code is based and inspired in the work of the team of Laravel, however BladeOne is mostly an original work)


  Files folder image Files (208)  
File Role Description
Files folder image.github (1 directory)
Files folder imagedocs (2 files)
Files folder imageexamples (43 files, 9 directories)
Files folder imagelib (5 files)
Files folder imagetests (22 files, 4 directories)
Accessible without login Plain text file BladeOneCache.md Data Auxiliary data
Accessible without login Plain text file BladeOneHtml.md Data Auxiliary data
Accessible without login Plain text file BladeOneLang.md Data Auxiliary data
Accessible without login Plain text file BladeOneLogic.md Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file readme.template.md Doc. Documentation

  Files folder image Files (208)  /  .github  
File Role Description
Files folder imageworkflows (1 file)

  Files folder image Files (208)  /  .github  /  workflows  
File Role Description
  Accessible without login Plain text file php.yml Data Auxiliary data

  Files folder image Files (208)  /  docs  
File Role Description
  Accessible without login Image file cleaning.gif Icon Icon image
  Accessible without login Image file cli.png Data Auxiliary data

  Files folder image Files (208)  /  examples  
File Role Description
Files folder imagefolder (1 file)
Files folder imageimg (1 file)
Files folder imagejs (1 file)
Files folder imagelang (3 files)
Files folder imagelang2 (3 files)
Files folder imagerelative1 (1 directory)
Files folder imageservice (1 file)
Files folder imageviews (22 directories)
Files folder imageviews2 (1 directory)
  Accessible without login Plain text file compilefile.php Example Example script
  Accessible without login Plain text file examplerelative.php Example Example script
  Plain text file example_composer.php Class Class source
  Accessible without login Plain text file example_composer2.php Example Example script
  Accessible without login Plain text file example_extends.php Example Example script
  Accessible without login Plain text file simpleextend.php Example Example script
  Accessible without login Plain text file test2.php Example Example script
  Accessible without login Plain text file test24.php Example Example script
  Accessible without login Plain text file test2b.php Example Example script
  Accessible without login Plain text file test3.php Example Example script
  Accessible without login Plain text file testauth.php Example Example script
  Accessible without login Plain text file testbootstrap4.php Example Example script
  Plain text file testcachepage.php Class Class source
  Accessible without login Plain text file testcomponent.php Example Example script
  Accessible without login Plain text file testComposer.php Example Example script
  Plain text file testcustom.php Class Class source
  Plain text file testcustom2.php Class Class source
  Accessible without login Plain text file testcustomif.php Example Example script
  Accessible without login Plain text file testdirective.php Example Example script
  Plain text file testextension.php Class Class source
  Accessible without login Plain text file testidentation.php Example Example script
  Accessible without login Plain text file testinclude.php Example Example script
  Accessible without login Plain text file testincludefast.php Example Example script
  Accessible without login Plain text file testincludeif.php Example Example script
  Accessible without login Plain text file testinclude_scope.php Example Example script
  Accessible without login Plain text file testingcompile.php Example Example script
  Plain text file testinject.php Class Class source
  Plain text file testinjectcustom.php Class Class source
  Accessible without login Plain text file testjson.php Example Example script
  Plain text file testlang.php Class Class source
  Accessible without login Plain text file testlang2019.php Example Example script
  Plain text file testloop.php Class Class source
  Accessible without login Plain text file testloop2.php Example Example script
  Plain text file testsecurity.php Class Class source
  Accessible without login Plain text file testshare.php Example Example script
  Accessible without login Plain text file testslash.php Example Example script
  Accessible without login Plain text file testsmall.php Example Example script
  Accessible without login Plain text file testswitch.php Example Example script
  Accessible without login Plain text file testtoken.php Example Example script
  Plain text file test_embed.php Class Class source
  Plain text file test_error.php Class Class source
  Accessible without login Plain text file test_pipe.php Example Example script
  Plain text file view.php Class Class source

  Files folder image Files (208)  /  examples  /  folder  
File Role Description
  Accessible without login Plain text file caller.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  img  
File Role Description
  Accessible without login Image file cleaning.gif Icon Icon image

  Files folder image Files (208)  /  examples  /  js  
File Role Description
  Accessible without login Plain text file jquery.min.js Data Auxiliary data

  Files folder image Files (208)  /  examples  /  lang  
File Role Description
  Accessible without login Plain text file es.php Aux. Auxiliary script
  Accessible without login Plain text file fr.php Aux. Auxiliary script
  Accessible without login Plain text file jp.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  lang2  
File Role Description
  Accessible without login Plain text file es.php Aux. Auxiliary script
  Accessible without login Plain text file fr.php Aux. Auxiliary script
  Accessible without login Plain text file jp.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  relative1  
File Role Description
Files folder imagerelative2 (1 file)

  Files folder image Files (208)  /  examples  /  relative1  /  relative2  
File Role Description
  Accessible without login Plain text file callrelative.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  service  
File Role Description
  Plain text file Metric.php Class Class source

  Files folder image Files (208)  /  examples  /  views  
File Role Description
Files folder imagebug (3 files)
Files folder imagecompile (2 files)
Files folder imageembed (2 files)
Files folder imageexampleextends (3 files)
Files folder imageformv2 (1 file)
Files folder imageif (2 files)
Files folder imageLang (1 file)
Files folder imagelayouts (1 file)
Files folder imagerelative (1 file)
Files folder imageShared (6 files)
Files folder imagesimpleextend (4 files)
Files folder imageTest (26 files, 1 directory)
Files folder imageTest2 (4 files)
Files folder imageTest3 (1 file)
Files folder imageTestBS (1 file)
Files folder imageTestCache (2 files)
Files folder imageTestComponent (3 files)
Files folder imageTestCustom (2 files)
Files folder imageTestExtension (3 files)
Files folder imageTestJSon (1 file)
Files folder imageTestSecurity (1 file)
Files folder imagewidgets (1 file)

  Files folder image Files (208)  /  examples  /  views  /  bug  
File Role Description
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script
  Accessible without login Plain text file content.blade.php Aux. Auxiliary script
  Accessible without login Plain text file home.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  compile  
File Role Description
  Accessible without login Plain text file compile1.blade.php.bak Data Auxiliary data
  Accessible without login Plain text file compile2.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  embed  
File Role Description
  Accessible without login Plain text file component.blade.php Aux. Auxiliary script
  Accessible without login Plain text file embed.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  exampleextends  
File Role Description
  Accessible without login Plain text file example.blade.php Aux. Auxiliary script
  Accessible without login Plain text file example2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file layout.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  formv2  
File Role Description
  Accessible without login Plain text file hello.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  if  
File Role Description
  Accessible without login Plain text file if.blade.php Aux. Auxiliary script
  Accessible without login Plain text file includeme.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Lang  
File Role Description
  Accessible without login Plain text file test.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  layouts  
File Role Description
  Accessible without login Plain text file mylayout.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  relative  
File Role Description
  Accessible without login Plain text file relative.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Shared  
File Role Description
  Accessible without login Plain text file display.blade.php Aux. Auxiliary script
  Accessible without login Plain text file errors.blade.php Aux. Auxiliary script
  Accessible without login Plain text file input.blade.php Aux. Auxiliary script
  Accessible without login Plain text file input2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file newlayout.blade.php Aux. Auxiliary script
  Accessible without login Plain text file subdisplay.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  simpleextend  
File Role Description
  Accessible without login Plain text file extendme.blade.php Aux. Auxiliary script
  Accessible without login Plain text file extendme2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file origin.blade.php Aux. Auxiliary script
  Accessible without login Plain text file origin2.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Test  
File Role Description
Files folder imageInnerView (1 file)
  Accessible without login Plain text file child.blade.php Aux. Auxiliary script
  Accessible without login Plain text file footermising.blade.php Aux. Auxiliary script
  Accessible without login Plain text file hello.blade.php Aux. Auxiliary script
  Accessible without login Plain text file hello2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file identation.blade.php Aux. Auxiliary script
  Accessible without login Plain text file include.blade.php Aux. Auxiliary script
  Accessible without login Plain text file include2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file includefast.blade.php Aux. Auxiliary script
  Accessible without login Plain text file inject.blade.php Aux. Auxiliary script
  Accessible without login Plain text file inject2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file layout.blade.php Aux. Auxiliary script
  Accessible without login Plain text file loop.blade.php Aux. Auxiliary script
  Accessible without login Plain text file loop2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file master.blade.php Aux. Auxiliary script
  Accessible without login Plain text file masterappend.blade.php Aux. Auxiliary script
  Accessible without login Plain text file pipe.blade.php Aux. Auxiliary script
  Accessible without login Plain text file share.blade.php Aux. Auxiliary script
  Accessible without login Plain text file slash.blade.php Aux. Auxiliary script
  Accessible without login Plain text file Small.blade.php Aux. Auxiliary script
  Accessible without login Plain text file sometemplate.blade.php Aux. Auxiliary script
  Accessible without login Plain text file switch.blade.php Aux. Auxiliary script
  Accessible without login Plain text file test24.blade.php Aux. Auxiliary script
  Accessible without login Plain text file test3.blade.php Aux. Auxiliary script
  Accessible without login Plain text file testappend.blade.php Aux. Auxiliary script
  Accessible without login Plain text file testdump.blade.php Aux. Auxiliary script
  Accessible without login Plain text file token.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Test  /  InnerView  
File Role Description
  Accessible without login Plain text file name.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Test2  
File Role Description
  Accessible without login Plain text file auth.blade.php Aux. Auxiliary script
  Accessible without login Plain text file directive.blade.php Aux. Auxiliary script
  Accessible without login Plain text file include.blade.php Aux. Auxiliary script
  Accessible without login Plain text file template.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  Test3  
File Role Description
  Accessible without login Plain text file customif.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestBS  
File Role Description
  Accessible without login Plain text file hellobootstrap.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestCache  
File Role Description
  Accessible without login Plain text file hellocache.blade.php Aux. Auxiliary script
  Accessible without login Plain text file hellocache2.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestComponent  
File Role Description
  Accessible without login Plain text file alert.blade.php Aux. Auxiliary script
  Accessible without login Plain text file component.blade.php Aux. Auxiliary script
  Accessible without login Plain text file paramless.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestCustom  
File Role Description
  Accessible without login Plain text file test.blade.php Aux. Auxiliary script
  Accessible without login Plain text file test2.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestExtension  
File Role Description
  Accessible without login Plain text file helloextensions.blade.php Aux. Auxiliary script
  Accessible without login Plain text file helloextensions3.blade.php Aux. Auxiliary script
  Accessible without login Plain text file helloextensions3_bs.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestJSon  
File Role Description
  Accessible without login Plain text file example.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  TestSecurity  
File Role Description
  Accessible without login Plain text file test.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views  /  widgets  
File Role Description
  Accessible without login Plain text file ckeditor.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  examples  /  views2  
File Role Description
Files folder imagecompile (2 files)

  Files folder image Files (208)  /  examples  /  views2  /  compile  
File Role Description
  Accessible without login Plain text file compile1.blade.php Aux. Auxiliary script
  Accessible without login Plain text file compile2.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  lib  
File Role Description
  Plain text file BladeOne.php Class Class source
  Plain text file BladeOneCache.php Class Class source
  Plain text file BladeOneCacheRedis.php Class Class source
  Accessible without login Plain text file bladeonecli Example Example script
  Plain text file BladeOneCustom.php Class Class source

  Files folder image Files (208)  /  tests  
File Role Description
Files folder imagedirectives (2 files)
Files folder imagelang (3 files)
Files folder imageresources (2 files, 2 directories)
Files folder imagetemplates (2 files, 2 directories)
  Plain text file AbstractBladeTestCase.php Class Class source
  Plain text file AuthTest.php Class Class source
  Plain text file BladeOneLangTest.php Class Class source
  Accessible without login Plain text file bootstrap.php Aux. Auxiliary script
  Plain text file CompilationTest.php Class Class source
  Plain text file CompileCliTest.php Class Class source
  Plain text file ComposerTest.php Class Class source
  Plain text file EachTest.php Class Class source
  Plain text file ExtendsTest.php Class Class source
  Plain text file IfTest.php Class Class source
  Plain text file IncludeTest.php Class Class source
  Plain text file LangTest.php Class Class source
  Plain text file LoopTest.php Class Class source
  Plain text file MultipleTemplatePathTest.php Class Class source
  Plain text file NoEscapeTest.php Class Class source
  Plain text file NullEscapeTest.php Class Class source
  Plain text file OtherTest.php Class Class source
  Plain text file PipeTest.php Class Class source
  Plain text file StackTest.php Class Class source
  Plain text file SwitchTest.php Class Class source
  Plain text file ThrowTest.php Class Class source
  Plain text file VariablesTest.php Class Class source

  Files folder image Files (208)  /  tests  /  directives  
File Role Description
  Plain text file CanTest.php Class Class source
  Plain text file ErrorTest.php Class Class source

  Files folder image Files (208)  /  tests  /  lang  
File Role Description
  Accessible without login Plain text file es.php Aux. Auxiliary script
  Accessible without login Plain text file fr.php Aux. Auxiliary script
  Accessible without login Plain text file jp.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  
File Role Description
Files folder imagetemplates (7 directories)
Files folder imagetemplates_two (1 file, 1 directory)
  Accessible without login Plain text file DummyLogContent.txt Doc. Documentation
  Accessible without login Plain text file fullDummyLog.txt Doc. Documentation

  Files folder image Files (208)  /  tests  /  resources  /  templates  
File Role Description
Files folder imagecompilation (3 files)
Files folder imagecomponents (1 file)
Files folder imagecomposer (2 files)
Files folder imageeach (4 files)
Files folder imageextends (3 files)
Files folder imageinclude (6 files)
Files folder imageShared (4 files)

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  compilation  
File Role Description
  Accessible without login Plain text file base.blade Data Auxiliary data
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script
  Accessible without login Plain text file noescape.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  components  
File Role Description
  Accessible without login Plain text file alert.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  composer  
File Role Description
  Accessible without login Plain text file example2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file layout.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  each  
File Role Description
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script
  Accessible without login Plain text file empty.blade.php Aux. Auxiliary script
  Accessible without login Plain text file empty_item.blade.php Aux. Auxiliary script
  Accessible without login Plain text file item.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  extends  
File Role Description
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script
  Accessible without login Plain text file child.blade.php Aux. Auxiliary script
  Accessible without login Plain text file child_section.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  include  
File Role Description
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script
  Accessible without login Plain text file if.blade.php Aux. Auxiliary script
  Accessible without login Plain text file ifcorrupt.blade.php Aux. Auxiliary script
  Accessible without login Plain text file includealias.blade.php Aux. Auxiliary script
  Accessible without login Plain text file subject.blade.php Aux. Auxiliary script
  Accessible without login Plain text file when.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates  /  Shared  
File Role Description
  Accessible without login Plain text file errors.blade.php Aux. Auxiliary script
  Accessible without login Plain text file input.blade.php Aux. Auxiliary script
  Accessible without login Plain text file input2.blade.php Aux. Auxiliary script
  Accessible without login Plain text file newlayout.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates_two  
File Role Description
Files folder imagecompilation (1 file)
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  resources  /  templates_two  /  compilation  
File Role Description
  Accessible without login Plain text file base.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  templates  
File Role Description
Files folder imageTest2 (4 files)
Files folder imageTestComponent (3 files)
  Accessible without login Plain text file basic.blade.php Aux. Auxiliary script
  Accessible without login Plain text file comment.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  templates  /  Test2  
File Role Description
  Accessible without login Plain text file auth.blade.php Aux. Auxiliary script
  Accessible without login Plain text file directive.blade.php Aux. Auxiliary script
  Accessible without login Plain text file include.blade.php Aux. Auxiliary script
  Accessible without login Plain text file template.blade.php Aux. Auxiliary script

  Files folder image Files (208)  /  tests  /  templates  /  TestComponent  
File Role Description
  Accessible without login Plain text file alert.blade.php Aux. Auxiliary script
  Accessible without login Plain text file component.blade.php Aux. Auxiliary script
  Accessible without login Plain text file paramless.blade.php Aux. Auxiliary script

The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page.
Install with Composer Install with Composer
 Version Control Unique User Downloads Download Rankings  
 100%
Total:490
This week:1
All time:5,878
This week:41Up
 User Ratings  
 
 All time
Utility:100%StarStarStarStarStarStar
Consistency:100%StarStarStarStarStarStar
Documentation:91%StarStarStarStarStar
Examples:91%StarStarStarStarStar
Tests:-
Videos:-
Overall:78%StarStarStarStar
Rank:41