Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Gretel Laravel Package

glhd/gretel

Gretel is a Laravel package for managing redirects and avoiding broken links. Define redirects in code, automatically catch 404s, route old URLs to new ones, and track hits with a simple, flexible API for keeping your app’s links healthy.

View on GitHub
Deep Wiki
Context7

Laravel breadcrumbs right out of a fairy tale

Frequently asked questions about Gretel
How do I install glhd/gretel in a Laravel application?
Run composer require glhd/gretel and let Laravel's package auto-discovery register the service provider and facade. Publish the config and views only if you actually need to customise them, then define your first trail against a named route. Finally, render it with the package's Blade component in your layout. If you are still on Laravel 10 through 12, pinning ^1.9 is a safe default while you canary-test 1.10.0 in CI.
Which Laravel and PHP versions does Gretel support?
Gretel tracks current Laravel releases: version 1.10.0 is a compatibility-maintenance release that widens its illuminate/framework constraint to include Laravel 13, and earlier 1.x releases cover the previous majors. Always check the composer.json constraint on the exact version you install, and run composer why-not glhd/gretel if resolution fails. Because the PHP floor generally follows the framework major, confirm your app's PHP version before upgrading. If you are not yet on Laravel 13, staying on ^1.9 costs you nothing.
How do I define breadcrumbs in code with Gretel?
Breadcrumbs are defined in PHP through a fluent API, typically mapping crumb labels to your application's named routes so URLs are generated rather than hard-coded. Definitions can be scoped globally, per route, or grouped into reusable trails and menus. The Gretel facade, with Gretel::make() call sites, is the usual entry point. Because trails resolve against named routes, renaming a route surfaces the problem instead of silently producing a broken link.
Can Gretel breadcrumbs include route parameters or bound model data?
Yes. Crumbs are resolved against named routes, so route parameters and route-model-bound instances can be passed through when the trail is built. That keeps URLs in sync with your real routing for resource-style patterns such as /products/{product}/edit. Keep the data you pass explicit, since Gretel is server-side and will not re-resolve during client-side navigation.
How do I render breadcrumbs in a Blade template?
Breadcrumbs are rendered with the package's Blade components, so they drop into any Blade-rendered layout or partial. Pass the trail you want to render as component data rather than hard-coding markup. If you have published and edited Gretel's views, re-verify the component markup after each upgrade, since that is the surface most likely to change.
Does Gretel require database tables or migrations?
No. Gretel has no persistence layer at all: no migrations, no Eloquent models, and no table behind the scenes. It registers a service provider, a facade and macro surface, and Blade components, then resolves crumbs against your named routes at render time. That also means uninstalling it leaves no data or schema to clean up.
Does Gretel work with Inertia.js or a JavaScript SPA front end?
Gretel is entirely server-side: it resolves crumbs at render time and outputs markup through Blade components. In an Inertia or SPA setup it therefore only helps on the initial server render, and you may end up duplicating breadcrumb logic in the client router. For Blade-first and Livewire applications it fits cleanly with no additional wiring.
How do I test breadcrumbs in a Laravel test suite?
Because there is no persistence, tests stay simple: hit a route with Laravel's HTTP test helpers and assert the expected breadcrumb text or markup is present in the response. Blade component assertions and snapshot-style checks of the rendered trail also work well. If you have customised published views, add a test that locks in the markup you depend on so package upgrades surface regressions early.
Is Gretel safe to add to a production Laravel application?
Gretel is a presentation-layer package: a service provider, a facade, and Blade components, with no queue jobs, event listeners, or schema footprint, so its blast radius is small. The practical production risk is not runtime behaviour but Composer resolution against your other illuminate/* dependents, especially admin panels and SEO or schema packages. Run composer update --dry-run on each app to confirm the constraint graph resolves before rolling out.
What are the alternatives to Gretel for Laravel breadcrumbs?
diglactic/laravel-breadcrumbs is the most established alternative, with a comparable route-driven approach built around a central definitions file. Smaller projects sometimes skip packages entirely and define breadcrumbs inline in Blade or via a view composer. Choose Gretel when you want a fluent PHP API, Blade components, and a deliberately minimal dependency footprint; choose a definitions-file package if you prefer that single-file convention.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle