An open API service indexing awesome lists of open source software.

https://github.com/antidot-framework/phug-template-renderer

Antidot Framework Phug template renderer library
https://github.com/antidot-framework/phug-template-renderer

Last synced: over 1 year ago
JSON representation

Antidot Framework Phug template renderer library

Awesome Lists containing this project

README

          

# Antidot Framework Phug Template Renderer

[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/?branch=master)
[![Code Coverage](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/?branch=master)
[![Build Status](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/badges/build.png?b=master)](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/build-status/master)
[![Code Intelligence Status](https://scrutinizer-ci.com/g/antidot-framework/phug-template-renderer/badges/code-intelligence.svg?b=master)](https://scrutinizer-ci.com/code-intelligence)

## Install

Using composer

```bash
composer require antidot-fw/phug-template-renderer
```

### Antidot framework

It will work out of the box, the only thing you need is to inject the TemplateRenderer interface in your request handler constructor

### As standalone component

See factory classes at `src/Container`.

## Config

```php
[
'pretty' => true,
'expressionLanguage' => 'js',
'pugjs' => false,
'localsJsonFile' => false,
'cache' => 'var/cache/pug',
'template_path' => 'templates/',
'globals' => [],
'filters' => [],
'keywords' => [],
'helpers' => [],
'default_params' => [],
],
];
```

## Usage

See full [PHP Pug documentation](https://www.phug-lang.com/) for more detail.

### In a request handler

```php
template = $template;
}

public function handle(ServerRequestInterface $request) : ResponseInterface
{
return new HtmlResponse(
$this->template->render('index', [
'name' => 'Koldo ;-D',
])
);
}
}
```

```pug
// templates/index.pug
html
head
title Antidot Todo List app
link(rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css")
link(href="//fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet")
body
main
section(class="container")
h1 Hello #{name}

script(type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js")
block scripts

```