PHPackages                             pluf/assort - 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. pluf/assort

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

pluf/assort
===========

A pluf module to manage categories and tags

6.0.6(6y ago)1363MITPHP

Since Jun 11Pushed 6y ago2 watchersCompare

[ Source](https://github.com/pluf/assort)[ Packagist](https://packagist.org/packages/pluf/assort)[ Docs](https://github.com/pluf/assort)[ RSS](/packages/pluf-assort/feed)WikiDiscussions master Synced yesterday

READMEChangelog (1)Dependencies (3)Versions (96)Used By (0)

Assortment System
=================

[](#assortment-system)

[![Build Status](https://camo.githubusercontent.com/305ce2a6c2149af3c1eb5cfaea3cd35d22b6b100b08738e132ff0e4c22ce5a81/68747470733a2f2f7472617669732d63692e6f72672f706c75662f6173736f72742e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/pluf/assort)

This is a Pluf module to provide related tools to categories and tags. It can be used to manage (add, remove, update, search) categories and tags.

Entities
--------

[](#entities)

This module contains two important entities:

```
- Category (Assort_Category)
- Tag (Assort_Tag)

```

### Category

[](#category)

PHP class of category is named Assort\_Category. Category has following properties:

```
- id (long)
- name (string)
- creation_dtime (datetime)
- modif_dtime (datetime)
- description (string)
- parent (FK from Assort_Category)
- content (FK from CMS_Content)
- thumbnail (FK from CMS_Content)

```

Categories should have unique values for pair (name, parent).

### Tag

[](#tag)

PHP class of tag is named Assort\_Tag. Tag has following properties:

```
- id (long)
- name (string)
- creation_dtime (datetime)
- modif_dtime (datetime)
- description (string)

```

Tags should have unique values for name.

API
---

[](#api)

This module adds following API:

### Category API

[](#category-api)

```
- GET:  	../category/find	[lists categories]
- PUSH: 	../category/new	[adds new category]
- GET:  	../category/{id}	[gets information of a category]
- PUSH  	../category/{id}	[updates information of a category]
- DELETE	../category/{id}	[deletes a category]

```

### Tag API

[](#tag-api)

```
- GET:  	../tag/find	[lists tags]
- PUSH: 	../tag/new		[adds new tag]
- GET:  	../tag/{id}	[gets information of a tag]
- PUSH  	../tag/{id}	[updates information of a tag]
- DELETE	../tag/{id}	[deletes a tag]

```

Other features
--------------

[](#other-features)

Following function in this module is defined and could be used:

### Assort\_Shortcuts\_GetTagByNameOr404($name)

[](#assort_shortcuts_gettagbynameor404name)

Returns Assort\_Tag with given name. Throws an exception (with http code 404) if there is no tag with given name.

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity79

Established project with proven stability

 Bus Factor1

Top contributor holds 97.9% of commits — single point of failure

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.

###  Release Activity

Cadence

Every ~11 days

Recently: every ~26 days

Total

94

Last Release

2298d ago

Major Versions

2.1.10 → 3.0.42017-12-19

3.0.14 → 4.0.122018-10-16

4.0.9 → 5.0.02018-10-16

4.0.1 → 5.0.12019-01-11

5.13.1 → 6.0.52020-03-15

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6371551?v=4)[Mostafa Barmshory](/maintainers/mostafabarmshory)[@mostafabarmshory](https://github.com/mostafabarmshory)

![](https://www.gravatar.com/avatar/6e5106f51fb4da1db8d3917890dcd42d4e4d250ce4f4b74f1c6489f52ae8c389?d=identicon)[hadimansouri](/maintainers/hadimansouri)

---

Top Contributors

[![hadimansouri](https://avatars.githubusercontent.com/u/8458562?v=4)](https://github.com/hadimansouri "hadimansouri (46 commits)")[![mostafabarmshory](https://avatars.githubusercontent.com/u/6371551?v=4)](https://github.com/mostafabarmshory "mostafabarmshory (1 commits)")

---

Tags

plufphptagcategoryplufpluf-moduleassort

### Embed Badge

![Health badge](/badges/pluf-assort/health.svg)

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

###  Alternatives

[marcocesarato/php-conventional-changelog

Generate changelogs and release notes from a project's commit messages and metadata and automate versioning with semver.org and conventionalcommits.org

2521.4M117](/packages/marcocesarato-php-conventional-changelog)[sonata-project/classification-bundle

Symfony SonataClassificationBundle

913.2M21](/packages/sonata-project-classification-bundle)

PHPackages © 2026

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