acidjazz / larpug
Adds the power of Pug to Laravel
Requires
- php: >=5.6.25
Requires (Dev)
- orchestra/testbench: ^3.3
This package is auto-updated.
Last update: 2024-12-18 07:36:49 UTC
README
Allows you to use native Pug (formerly Jade) seamlessly in Laravel 5 and Lumen
Requirements
Installation
Require this package with Composer
composer require acidjazz/larpug
Install the needed node modules to run pug
npm i --prefix vendor/acidjazz/larpug/node/
Laravel
Once Composer has installed or updated your packages you need to register larpug with Laravel itself. Open up config/app.php and find the providers key, towards the end of the file, and add 'larpug\LarpugServiceProvider', to the end:
'providers' => [ ... Larpug\ServiceProvider::class, ],
Lumen
For usage with Lumen, add the service provider in bootstrap/app.php
.
$app->register(Larpug\ServiceProvider::class);
Usage
Using this is exactly the same way as using Blade templates, place your pug files in your views
folder (usually in resources/views
) and render them using view()
namespace App\Controllers; class Pages extends Controller { public function index() { return view('pages.index', ['name' => 'kevin', 'title' => 'test title']); } }
This will look for resources/views/pages/index.pug
doctype html(lang='en') head title Title: #{self.title} body .page.index .name=self.name
Which will render something like
<!DOCTYPE html> <html lang="en"> <head> <title>Title: test title </title> </head> <body> <div class="page index"> <div class="name">Kevin</div> </div> </body> </html>';