icanboogie/bind-render

Binds icanboogie/render to ICanBoogie

Maintainers

👁 olvlvl

Package info

github.com/ICanBoogie/bind-render

Homepage

pkg:composer/icanboogie/bind-render

Statistics

Installs: 942

Dependents: 3

Suggesters: 0

Stars: 0

Open Issues: 0

v5.0.0 2022-04-13 20:48 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

BSD-3-Clause 83e1e9be16bfbcf1aab0f1ab946beae3b44437bc

This package is auto-updated.

Last update: 2026-06-11 14:14:22 UTC


README

👁 Release
👁 Code Quality
👁 Code Coverage
👁 Packagist

The icanboogie/bind-render package binds icanboogie/render to ICanBoogie, using its autoconfig feature. It adds various getters and methods to the Application instance and a template resolver that uses the application paths to look for templates.

<?php

/* @var ICanBoogie\Application $app */

echo get_class($app->template_engines); // ICanBoogie\Render\EngineCollection
echo get_class($app->template_resolver); // ICanBoogie\Binding\Render\ApplicationTemplateResolver
echo get_class($app->renderer); // ICanBoogie\Render\Renderer

$app->render($app->models['articles']->one);

The shared BasicTemplateResolver instance is replaced by an ApplicationTemplateResolver instance during the TemplateResolver::alter event of class TemplateResolver\AlterEvent.

Enhanced template resolver

ApplicationTemplateResolver extends the template resolver used by icanboogie/render and icanboogie/view to search templates in the application paths (see Multi-site support). Also, the "//" prefix can be used to search for templates from these paths .e.g. "//my/special/templates/_form".

Defining engines using render config fragments

The preferred method to define render engines is using render config fragments, because they can be synthesized and cached.

The following example demonstrates how to define and engine for the .phtml templates:

<?php

// config/render.php

namespace ICanBoogie\Binding\Render;

use ICanBoogie\Render\PHPEngine;

return [

	RenderConfig::ENGINES => [

		'.phtml' => PHPEngine::class

	]

];

Continuous Integration

The project is continuously tested by GitHub actions.

👁 Tests
👁 Static Analysis
👁 Code Style

Code of Conduct

This project adheres to a Contributor Code of Conduct. By participating in this project and its community, you are expected to uphold this code.

Contributing

Please see CONTRIBUTING for details.

License

icanboogie/bind-render is released under the BSD-3-Clause.