PHPackages                             famelo/navigation - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. famelo/navigation

ActiveTypo3-flow-package[Utility &amp; Helpers](/categories/utility)

famelo/navigation
=================

0142PHP

Since Feb 28Pushed 12y ago2 watchersCompare

[ Source](https://github.com/mneuhaus/Famelo.Navigation)[ Packagist](https://packagist.org/packages/famelo/navigation)[ RSS](/packages/famelo-navigation/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Famelo.Navigation
=================

[](#famelonavigation)

This package uses a combination of Routes.yaml and Policy.yaml to generate a menu for you :)

```
-
  name: 'Home'
  uriPattern: 'home'
  navigation: 'Home'
  defaults:
    '@format': 'html'
    '@action':     'index'
    '@controller': 'Standard'
    '@package': 'My.Package'
  appendExceedingArguments: true

-
  name: 'Products'
  uriPattern: 'products'
  navigation: 'Products'
  defaults:
    '@format': 'html'
    '@action':     'index'
    '@controller': 'Products'
    '@package': 'My.Package'
  appendExceedingArguments: true

-
  name: 'Product in Foo Category'
  uriPattern: 'products/foo'
  navigation: 'Foo'
  defaults:
    '@format': 'html'
    '@action':     'foo'
    '@controller': 'Products'
    '@package': 'My.Package'
  appendExceedingArguments: true
```

That routes will be parsed based on the paths into:

```
Home
Products
  - Foo

```

Now let's render a menu from that information:

```
{namespace n=Famelo\Navigation\ViewHelpers}

      {item.label}

              {child.label}

```

Something you don't see, which happens in the background is, that each NavigationItem is checked through the Policy.yaml if the current user has access to it. So, if you add a Policy.yaml like this:

```
resources:
  methods:
    Products: 'method(My\Package\Controller\ProductsController->.*Action())'

roles:
  Administrator: []

acls:
  Administrator:
    methods:
      Products: GRANT
```

Only the Logged in Administrator will see the Products NavigationItems :)

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/dab78333e868497b7a31d4f16d8268ab3c9595a8c55a6df17c6620026588b062?d=identicon)[mneuhaus](/maintainers/mneuhaus)

### Embed Badge

![Health badge](/badges/famelo-navigation/health.svg)

```
[![Health](https://phpackages.com/badges/famelo-navigation/health.svg)](https://phpackages.com/packages/famelo-navigation)
```

###  Alternatives

[igbinary/igbinary

Igbinary is a drop in replacement for the standard php serializer. Instead of the time and space consuming textual representation used by PHP's serialize(), igbinary stores php data structures in a compact binary form. Savings are significant when using memcached or similar memory based storages for serialized data.

7801.7k](/packages/igbinary-igbinary)[teknoo/states

Library to create classes following the State pattern in PHP. This can be a cleaner way for an object to change its behavior at runtime without resorting to large monolithic conditional statements and this improve maintainability and workflow writing.

1138.5k18](/packages/teknoo-states)[andychukse/laravel-pricing-plans

A package provide pricing plans for Laravel.

121.8k](/packages/andychukse-laravel-pricing-plans)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
