PHPackages                             inpsyde/gutenberg-versions-mirror - 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. inpsyde/gutenberg-versions-mirror

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

inpsyde/gutenberg-versions-mirror
=================================

Package that mirrors and provide multiple versions of teh Gutenberg plugin.

0126JavaScriptCI failing

Since Feb 11Pushed 6mo ago1 watchersCompare

[ Source](https://github.com/inpsyde/gutenberg-versions-mirror)[ Packagist](https://packagist.org/packages/inpsyde/gutenberg-versions-mirror)[ RSS](/packages/inpsyde-gutenberg-versions-mirror/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependenciesVersions (1)Used By (0)

Gutenberg Versions Mirror
=========================

[](#gutenberg-versions-mirror)

What is this?
-------------

[](#what-is-this)

This package contains a mirror of multiple versions of Gutenberg plugin, in different sub-folders. This allows to contemporarily deploy multiple versions of Gutenberg to WordPress, and let different themes (for example) require different versions.

How does it work?
-----------------

[](#how-does-it-work)

The wp.org API is called regularly in a GitHub Action to find new Gutenberg versions.

If new versions are found, they are saved, each in a separate folder.

A utility class shipped with the package allows external code to require Gutenberg in the desired version.

How to use this package
-----------------------

[](#how-to-use-this-package)

- Require via Composer.
- Ensure Composer autoload is loaded.
- **From a MU plugin** require the version you need in one of the following ways

### Require a specific version

[](#require-a-specific-version)

```
/** @var string|null $loadedVersion The exact version loaded or null on failure */
$loadedVersion = Inpsyde\GutenbergVersions\Loader::loadVersion('14.1.0');
```

### Require the first found among a list of possible (accepted) versions

[](#require-the-first-found-among-a-list-of-possible-accepted-versions)

```
/** @var string|null $loadedVersion The exact version loaded or null on failure */
$loadedVersion = Inpsyde\GutenbergVersions\Loader::loadVersion('14.1.0', '13.2.0');
```

### Require via Semver requirement

[](#require-via-semver-requirement)

```
/** @var string|null $loadedVersion The exact version loaded or null on failure */
$loadedVersion = Inpsyde\GutenbergVersions\Loader::loadMatching('^14');

$loadedVersion = Inpsyde\GutenbergVersions\Loader::loadMatching('>=14.2.0 || ~13.2');
```

URL filtering
-------------

[](#url-filtering)

Gutenberg internally calls `plugins_url()` with the assumption it is installed under the plugins' folder.

However, when using this library, Gutenberg files are deeper in the plugin folder tree.

To fix broken URLs resulting from that, when loading a Gutenberg version, the package also filters `plugins_url()`.

Unique loading
--------------

[](#unique-loading)

The package ensures that any attempt of loading Gutenberg multiple times (same of different version) will fail.

License
-------

[](#license)

This repository is a free software, and is released under the terms of the GNU General Public License version 2 or (at your option) any later version. See [LICENSE](./LICENSE) for complete license.

###  Health Score

21

—

LowBetter than 17% of packages

Maintenance47

Moderate activity, may be stable

Popularity10

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity13

Early-stage or recently created project

 Bus Factor1

Top contributor holds 87.4% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/003585053f7d5d2127d31d5a4e79ba309acc075154f5752de8f429ac42c54dbe?d=identicon)[Syde](/maintainers/Syde)

---

Top Contributors

[![inpsyde-deploybot](https://avatars.githubusercontent.com/u/12932151?v=4)](https://github.com/inpsyde-deploybot "inpsyde-deploybot (111 commits)")[![gmazzap](https://avatars.githubusercontent.com/u/2208282?v=4)](https://github.com/gmazzap "gmazzap (9 commits)")[![widoz](https://avatars.githubusercontent.com/u/1917784?v=4)](https://github.com/widoz "widoz (3 commits)")[![tyrann0us](https://avatars.githubusercontent.com/u/8144115?v=4)](https://github.com/tyrann0us "tyrann0us (2 commits)")[![Chrico](https://avatars.githubusercontent.com/u/3417446?v=4)](https://github.com/Chrico "Chrico (1 commits)")[![somtijds](https://avatars.githubusercontent.com/u/3629600?v=4)](https://github.com/somtijds "somtijds (1 commits)")

---

Tags

gutenberg-pluginwordpress-plugin

### Embed Badge

![Health badge](/badges/inpsyde-gutenberg-versions-mirror/health.svg)

```
[![Health](https://phpackages.com/badges/inpsyde-gutenberg-versions-mirror/health.svg)](https://phpackages.com/packages/inpsyde-gutenberg-versions-mirror)
```

###  Alternatives

[rawilk/laravel-printing

Direct printing for Laravel apps

564300.0k10](/packages/rawilk-laravel-printing)[jeffreyvanrossum/wp-settings

Handy wrapper to make creating WordPress settings pages a breeze.

892.8k2](/packages/jeffreyvanrossum-wp-settings)[coldtrick/group_tools

Combines different group additions into one plugin

315.3k](/packages/coldtrick-group-tools)[jaaulde/php-ipv4

PHP classes for working with IPV4 addresses and networks.

1034.9k](/packages/jaaulde-php-ipv4)

PHPackages © 2026

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