chamber-orchestra/breadcrumbs
Laravel breadcrumbs helper for Chamber Orchestra apps. Define breadcrumb trails in code, generate navigable links for pages, and keep UI navigation consistent across routes/views. Lightweight package aimed at simple breadcrumb management in PHP.
A lightweight, iterable breadcrumb collection for Symfony applications. Implements ArrayAccess, Iterator, and Countable for seamless integration with Twig templates and controllers.
Part of the Chamber Orchestra ecosystem.
composer require chamber-orchestra/breadcrumbs
use ChamberOrchestra\Breadcrumbs\Breadcrumbs;
$breadcrumbs = new Breadcrumbs();
$breadcrumbs
->addCrumb('Home', 'app_home')
->addCrumb('Products', 'app_products', ['category' => 'books'])
->addCrumb('Current Page');
$breadcrumbs->addRequestCrumb('Current Page', $request);
Extracts _route and _route_params from the request attributes automatically.
$breadcrumbs->addCrumb('Home', 'app_home', [], prepend: true);
$breadcrumbs->addCrumbsClosure(function (Breadcrumbs $crumbs) {
$crumbs->addCrumb('Home', 'app_home');
$crumbs->addCrumb('About', 'app_about');
});
<nav aria-label="breadcrumb">
<ol>
{% for crumb in breadcrumbs %}
<li>
{% if crumb.route %}
<a href="{{ path(crumb.route, crumb.routeParams) }}">{{ crumb.name }}</a>
{% else %}
{{ crumb.name }}
{% endif %}
</li>
{% endfor %}
</ol>
</nav>
$first = $breadcrumbs[0];
$total = count($breadcrumbs);
MIT
How can I help you explore Laravel packages today?