alxarafe/resource-html

This package is abandoned and no longer maintained. The author suggests using the alxarafe/resource-controller package instead.

HTML adapter for alxarafe/resource-controller. Provides a RendererContract implementation using pure PHP and HTML templates.

Maintainers

Package info

github.com/alxarafe/resource-html

pkg:composer/alxarafe/resource-html

Statistics

Installs: 12

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.1.0 2026-04-23 08:59 UTC

This package is auto-updated.

Last update: 2026-04-24 08:13:54 UTC


README

Warning

DEPRECATED AND OBSOLETE

This package has been deprecated and its functionality has been natively integrated into resource-controller via the DefaultRenderer and static HTML templates. You no longer need this package. Please remove it from your dependencies.

PHP Version CI Tests Static Analysis PRs Welcome

HTML adapter for alxarafe/resource-controller.

Provides a RendererContract implementation using pure PHP and HTML templates (.phtml or .php).

Ecosystem

Package Purpose Status
resource-controller Core CRUD engine + UI components ✅ Stable
resource-eloquent Eloquent ORM adapter ✅ Stable
resource-pdo Native PDO adapter ✅ Stable
resource-blade Blade template renderer adapter ✅ Stable
resource-twig Twig template renderer adapter ✅ Stable
resource-html Pure PHP/HTML template renderer adapter ✅ Stable

Installation

composer require alxarafe/resource-html

This will also install alxarafe/resource-controller as a dependency.

Usage

use Alxarafe\ResourceHtml\HtmlRenderer;

// Create a renderer with template paths
$renderer = new HtmlRenderer(
    templatePaths: [__DIR__ . '/views']
);

// Render a template (automatically resolves .phtml or .php)
echo $renderer->render('products/index', [
    'title' => 'Products',
    'items' => $products,
]);

// Add additional template paths at runtime
$renderer->addTemplatePath(__DIR__ . '/module-views');

Template example (views/products/index.phtml)

<h1><?= htmlspecialchars($title) ?></h1>
<ul>
<?php foreach ($items as $item): ?>
    <li><?= htmlspecialchars($item['name']) ?><?= $item['price'] ?></li>
<?php endforeach; ?>
</ul>

<!-- Include sub-templates recursively using the renderer instance -->
<?= $this->render('partials/footer', ['year' => date('Y')]) ?>

Development

Docker

docker compose up -d
docker exec alxarafe-html composer install

Running the CI pipeline locally

bash bin/ci_local.sh

Running tests only

bash bin/run_tests.sh

License

GPL-3.0-or-later