nowo-tech/breadcrumb-kit-bundle
Composer 安装命令:
composer require nowo-tech/breadcrumb-kit-bundle
包简介
Symfony bundle: configurable breadcrumb trails (route matching, i18n, optional links, collection-level presentation).
README 文档
README
⭐ Found this useful? Install from Packagist and consider starring the GitHub repository.
Symfony bundle for database-driven breadcrumb trails: match the current route by name + static parameters, walk a parent chain, support i18n (JSON translations on entities), optional links, per-collection presentation (icons, CSS, responsive JSON), and PSR-6 caching of serialized item rows.
Design aligns with DashboardMenuBundle (Doctrine, YAML defaults, cache pool, Twig namespace overrides).
Version information
Latest release: v1.2.1 (2026-07-03). Requires PHP 8.2+ and Symfony 7+. Supported branches and releases are tagged on GitHub; prefer the latest v* tag or main for development.
Status
MVP (v1.2.1): entities, repositories, BreadcrumbLoader, BreadcrumbUrlResolver, Twig (breadcrumb_trail, breadcrumb_render), optional web dashboard (collections/items CRUD + presentation styles, configurable URL prefix), presentation options (home icon, hide single-root trail on home). Demos: Symfony 7 (demo/symfony7/, port 8020) and Symfony 8.1 (demo/symfony8/, port 8021) with FrankenPHP. Flex recipe in .symfony/recipe/ (publish to Symfony recipe index when ready). Planned: migration command, event-based enrichers.
FrankenPHP worker mode: demos use worker-enabled Caddyfile for production-style runs; development uses Caddyfile.dev without workers. See docs/DEMO-FRANKENPHP.md.
Requirements
- PHP
>=8.2 <8.6 - Symfony 7.x or 8.x (see
composer.json) - Doctrine ORM
Quick start
composer require nowo-tech/breadcrumb-kit-bundle
Register the bundle in config/bundles.php:
Nowo\BreadcrumbKitBundle\NowoBreadcrumbKitBundle::class => ['all' => true],
With Symfony Flex, the recipe (when available from Packagist or your recipe index) registers the bundle and adds config/routes. Without Flex, see docs/INSTALLATION.md for manual steps.
Example config/packages/nowo_breadcrumb_kit.yaml:
nowo_breadcrumb_kit: locales: ['en', 'es'] default_locale: 'en' default_collection: 'default' cache: ttl: 60 pool: cache.app
Documentation
- Installation
- Configuration
- Usage
- Contributing
- Changelog
- Upgrading
- Release
- Security
- Engram
- Spec-driven development
Additional documentation
- DEMO-FRANKENPHP.md — FrankenPHP demos (
demo/symfony7,demo/symfony8)
Demo applications
Symfony 7 (default):
make -C demo/symfony7 up
Opens at http://localhost:8020 (see demo/symfony7/.env.example → PORT).
Symfony 8 (Symfony 8.1, PHP 8.4):
make -C demo/symfony8 up
Opens at http://localhost:8021 by default; the app redirects / to /en/.
Tests and coverage
- PHP: run
composer test-coverageormake test-coverage(Docker). Update the percentage below when you change code or tests; CI enforces a green build and generatescoverage.xml.
| Language | Coverage (Lines / notes) |
|---|---|
| PHP | 99.52% (Lines, PHPUnit + PCOV; run make test-coverage to refresh) |
| TS/JS | N/A |
| Python | N/A |
Development
composer install
composer test
composer phpstan
With Docker from the bundle root:
make install make test-coverage
License
MIT. See LICENSE.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-07-03