PHPackages                             snoke/interface-associations - 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. snoke/interface-associations

ActiveSymfony-bundle

snoke/interface-associations
============================

0.0.2(1y ago)016MITPHPPHP ^8.2

Since Jul 12Pushed 1y ago1 watchersCompare

[ Source](https://github.com/snoke/interface-associations)[ Packagist](https://packagist.org/packages/snoke/interface-associations)[ RSS](/packages/snoke-interface-associations/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (4)Versions (3)Used By (0)

Interface Associations
======================

[](#interface-associations)

Bundle for Symfony7 with Doctrine ORM

The Interface Associations Bundle provides a way to replace ORM relations with interfaces and map them to concrete classes at runtime. This enables the development of abstract components.

installation
============

[](#installation)

run `composer req snoke/interface-associations`

Functionality
-------------

[](#functionality)

The bundle allows configuring remappings. You can specify which classes or interfaces should be replaced by other classes or interfaces, either globally or specifically for certain classes and properties.

configuration
-------------

[](#configuration)

edit `config/packages/snoke_interface_associations.yaml` as follows:

```
snoke_interface_associations:
    remap:
        - source: 'App\Interface\EntityInterface'
          target: 'App\Entity\User'
          class: 'App\Entity\AuthToken'
          field: 'user'
```

- source: The source class or interface to be remapped.
- target: The target class to remap to.
- class (optional): The class where the remapping should be applied. If not specified, the remapping is global.
- property (optional): The property within the class where the remapping should be applied. If not specified, the remapping applies to all properties of the class.

this way you can produce code having interfaces as relationships

```
    #[ORM\ManyToOne(inversedBy: 'accessTokens')]
    private EntityInterface $user;
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~0 days

Total

2

Last Release

672d ago

PHP version history (2 changes)0.0.1PHP ^8.1

0.0.2PHP ^8.2

### Community

Maintainers

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

---

Top Contributors

[![snoke](https://avatars.githubusercontent.com/u/17656154?v=4)](https://github.com/snoke "snoke (15 commits)")

### Embed Badge

![Health badge](/badges/snoke-interface-associations/health.svg)

```
[![Health](https://phpackages.com/badges/snoke-interface-associations/health.svg)](https://phpackages.com/packages/snoke-interface-associations)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k16.7M310](/packages/easycorp-easyadmin-bundle)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)

PHPackages © 2026

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