PHPackages                             mhsdesign/proposal-neos-ui-esm-plugin-loader - 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. mhsdesign/proposal-neos-ui-esm-plugin-loader

AbandonedArchivedNeos-plugin[Utility &amp; Helpers](/categories/utility)

mhsdesign/proposal-neos-ui-esm-plugin-loader
============================================

Allows ES-Module Plugins to be loaded in the Neos.Ui

1.0.0(3y ago)0815MITPHP

Since Sep 7Pushed 3y ago1 watchersCompare

[ Source](https://github.com/mhsdesign/MhsDesign.ProposalNeosUiEsmPluginLoader)[ Packagist](https://packagist.org/packages/mhsdesign/proposal-neos-ui-esm-plugin-loader)[ RSS](/packages/mhsdesign-proposal-neos-ui-esm-plugin-loader/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

MhsDesign.ProposalNeosUiEsmPluginLoader
---------------------------------------

[](#mhsdesignproposalneosuiesmpluginloader)

Allows ES-Module Plugins to be loaded in the Neos.Ui, by allowing ``

for fully compatibility with [ESM Neos Ui Plugin Builder with Esbuild](https://github.com/mhsdesign/esbuild-neos-ui-extensibility)

### Issue in the Neos.Ui

[](#issue-in-the-neosui)

[neos/neos-ui#3097](https://github.com/neos/neos-ui/issues/3097)

Usage
-----

[](#usage)

Neos.Neos.Ui.resources.javascript and stylesheets can make use of the proposed `attributes` array.

```
Neos:
  Neos:
    Ui:
      resources:
        javascript:
          'My.Cool:Plugin':
            resource: 'resource://My.Cool/Public/NeosUserInterface/Plugin.js'
            # legacy first level attribute 'defer'
            # defer: true

            # NEW Attributes!
            attributes:
              type: "module"
              defer: true
              any: "thing"

        stylesheets:
          'My.Cool:Plugin':
            # NEW Attributes!
            attributes:
              any: "thing"
```

Install
-------

[](#install)

```
composer require mhsdesign/proposal-neos-ui-esm-plugin-loader

```

Implementation
--------------

[](#implementation)

The Neos.Ui uses a [StyleAndJavascriptInclusionService](https://github.com/neos/neos-ui/blob/744d50cd2503f64af1c1baf78c756269d34f7116/Classes/Domain/Service/StyleAndJavascriptInclusionService.php#L23), which reads the `Neos.Neos.Ui.resources.javascript` and builds html `` tags from it.

This Service is now replaced in Objects.yaml with a version, which allows additional attributes.

([Line 100](https://github.com/neos/neos-ui/blob/744d50cd2503f64af1c1baf78c756269d34f7116/Classes/Domain/Service/StyleAndJavascriptInclusionService.php#L100))

```
- $defer = key_exists('defer', $element) && $element['defer'] ? 'defer ' : '';
- $result .= $builderForLine($finalUri, $defer);
+ $additionalAttributes = array_merge(
+     // legacy first level 'defer' attribute
+     isset($element['defer']) ? ['defer' => $element['defer']] : [],
+     $element['attributes'] ?? []
+ );
+ $result .= $builderForLine($finalUri, $this->htmlAttributesArrayToString($additionalAttributes));
```

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

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

Unknown

Total

1

Last Release

1395d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/85400359?v=4)[Marc Henry Schultz](/maintainers/mhsdesign)[@mhsdesign](https://github.com/mhsdesign)

---

Top Contributors

[![mhsdesign](https://avatars.githubusercontent.com/u/85400359?v=4)](https://github.com/mhsdesign "mhsdesign (1 commits)")

### Embed Badge

![Health badge](/badges/mhsdesign-proposal-neos-ui-esm-plugin-loader/health.svg)

```
[![Health](https://phpackages.com/badges/mhsdesign-proposal-neos-ui-esm-plugin-loader/health.svg)](https://phpackages.com/packages/mhsdesign-proposal-neos-ui-esm-plugin-loader)
```

###  Alternatives

[techdivision/ckstyles

Neos package which enables you adding your custom style classes for the CkEditor with a simple Yaml configuration

21179.5k](/packages/techdivision-ckstyles)[sitegeist/taxonomy

Manage vocabularies and taxonomies as separate node-hierarchy.

1595.1k1](/packages/sitegeist-taxonomy)[shel/neos-colorpicker

A plugin for Neos CMS which provides a colorpicker editor

14104.7k6](/packages/shel-neos-colorpicker)[yoast/yoast-seo-for-neos

Yoast SEO for Neos CMS

24172.2k](/packages/yoast-yoast-seo-for-neos)[shel/neos-hyphens

A plugin for Neos CMS which provides hyphens for the inline editor

21214.3k1](/packages/shel-neos-hyphens)[sitegeist/silhouettes

Preconfigure property-silhuettes that can be applied to various properties of multiple NodeTypes.

16160.5k](/packages/sitegeist-silhouettes)

PHPackages © 2026

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