PHPackages                             digitalpolygon/polymer-drupal-contracts - 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. [PSR &amp; Standards](/categories/psr-standards)
4. /
5. digitalpolygon/polymer-drupal-contracts

ActiveLibrary[PSR &amp; Standards](/categories/psr-standards)

digitalpolygon/polymer-drupal-contracts
=======================================

Stable PSR-14 event contracts shared across the Polymer Drupal family. A normal PSR-4 library, not a runtime-loaded Polymer extension.

0.x-dev(1mo ago)06↓85.7%2GPL-2.0-onlyPHPPHP &gt;=8.1

Since Jun 5Pushed 1mo agoCompare

[ Source](https://github.com/digitalpolygon/polymer-drupal-contracts)[ Packagist](https://packagist.org/packages/digitalpolygon/polymer-drupal-contracts)[ RSS](/packages/digitalpolygon-polymer-drupal-contracts/feed)WikiDiscussions 0.x Synced 1w ago

READMEChangelogDependencies (7)Versions (1)Used By (2)

Important

This repository is a **read-only split mirror** of [`packages/drupal-contracts`](https://github.com/digitalpolygon/polymer-drupal-monorepo/tree/0.x/packages/drupal-contracts)in the [polymer-drupal-monorepo](https://github.com/digitalpolygon/polymer-drupal-monorepo). Development happens there — please open issues and pull requests against the monorepo.

Polymer Drupal Contracts
========================

[](#polymer-drupal-contracts)

Stable, dependency-light event contracts shared across the Polymer Drupal family.

This is a **normal PSR-4 library**, not a runtime-loaded Polymer extension: it declares ordinary `autoload.psr-4` and has no `.poly_info.yml`, service provider, or runtime-forced namespace. Plugins couple to the contracts here — never to one another's implementations.

Listening to an event does **not** require the emitting plugin to be installed; the event simply never fires unless its emitter is installed and enabled. Keep the two concerns separate: *contracts = what I react to*; *composer/enable dependency = whether the emitter exists*.

Versioning
----------

[](#versioning)

This is the strictest-semver package in the family. Implementations change freely; bump this package's **major** only when an event name or payload shape breaks. Plugins should require `digitalpolygon/polymer-drupal-contracts: ^1` once it is stabilized.

Event catalog
-------------

[](#event-catalog)

`DigitalPolygon\Polymer\Drupal\Contracts\Event\DrupalSettingsEvents`

NameConstantPayloadShape`polymer_drupal.settings.collect_files``COLLECT_SETTINGS_FILES``CollectSettingsFilesEvent`collect`polymer_drupal.settings.alter_files``ALTER_SETTINGS_FILES``AlterSettingsFilesEvent`alter- **collect** — listeners contribute keyed PHP settings-file snippets for a site via `addSettingsFile($id, $snippet)`.
- **alter** — listeners may reorder/remove/replace the resolved set via `setSettingsFiles($snippets)` before it is written to the site's settings.

Emitted by `polymer-drupal` during site setup; `polymer-pantheon-drupal` listens to contribute its Pantheon integration settings.

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance90

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity26

Early-stage or recently created project

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

Unknown

Total

1

Last Release

49d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/419534?v=4)[Les Peabody](/maintainers/lpeabody)[@lpeabody](https://github.com/lpeabody)

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/digitalpolygon-polymer-drupal-contracts/health.svg)

```
[![Health](https://phpackages.com/badges/digitalpolygon-polymer-drupal-contracts/health.svg)](https://phpackages.com/packages/digitalpolygon-polymer-drupal-contracts)
```

###  Alternatives

[symfony/event-dispatcher

Provides tools that allow your application components to communicate with each other by dispatching events and listening to them

8.5k1.0B4.4k](/packages/symfony-event-dispatcher)[symfony/security-core

Symfony Security Component - Core Library

1.9k213.8M1.2k](/packages/symfony-security-core)[vich/uploader-bundle

Ease file uploads attached to entities

1.9k27.6M154](/packages/vich-uploader-bundle)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[typo3/cms

TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.

1.2k1.9M122](/packages/typo3-cms)[sulu/sulu

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

1.3k1.4M215](/packages/sulu-sulu)

PHPackages © 2026

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