PHPackages                             automattic/jetpack-composer-plugin - 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. [Localization &amp; i18n](/categories/localization)
4. /
5. automattic/jetpack-composer-plugin

ActiveComposer-plugin[Localization &amp; i18n](/categories/localization)

automattic/jetpack-composer-plugin
==================================

A custom installer plugin for Composer to move Jetpack packages out of `vendor/` so WordPress's translation infrastructure will find their strings.

v4.0.8(3w ago)642.1k—4.5%110GPL-2.0-or-laterPHPPHP &gt;=7.2CI failing

Since Dec 14Pushed 4d ago3 watchersCompare

[ Source](https://github.com/Automattic/jetpack-composer-plugin)[ Packagist](https://packagist.org/packages/automattic/jetpack-composer-plugin)[ RSS](/packages/automattic-jetpack-composer-plugin/feed)WikiDiscussions trunk Synced yesterday

READMEChangelogDependencies (13)Versions (38)Used By (10)

composer-plugin
===============

[](#composer-plugin)

This is a custom installer plugin for Composer to help with WordPress translation of Composer libraries intended for use as shared code in plugins and themes.

When this plugin is installed, libraries with `type` set to `jetpack-library` will be installed into `jetpack_vendor/` instead of the usual `vendor/`. Also translation text domain information will be collected from such libraries and written to `jetpack_vendor/i18n-map.php`.

Use in a WordPress plugin or theme
----------------------------------

[](#use-in-a-wordpress-plugin-or-theme)

This plugin needs to be put into the `require` section of your `composer.json` file in order to be used.

```
	"require": {
		"automattic/jetpack-composer-plugin": "*"
	},
```

You'll also want to set `extra.wp-plugin-slug` or `extra.wp-theme-slug` to the WordPress.org slug, which is also the textdomain for your plugin or theme's translations.

```
	"extra": {
		"wp-plugin-slug": "my-plugin"
	},
```

Finally, for the libraries' translations to work, you'll also want to require [automattic/jetpack-assets](https://packagist.org/packages/automattic/jetpack-assets)and include something like the following in your initialization code just after you load the autoloader:

```
\Automattic\Jetpack\Assets::alias_textdomains_from_file( __DIR__ . '/jetpack_vendor/i18n-map.php' );
```

Use by a library
----------------

[](#use-by-a-library)

A library that wants to be used in WordPress plugins or themes needs to set the `type` in `composer.json` to `jetpack-library`. The library package *should not* itself include a dependency on automattic/jetpack-composer-plugin, although it may [suggest](https://getcomposer.org/doc/04-schema.md#suggest) it.

All calls to `__()`, `_x()`, and other WordPress i18n functions should then use a textdomain unique to the library. This textdomain also needs to be declared in `composer.json` as `extra.textdomain`:

```
	"extra": {
		"textdomain": "my-library"
	},
```

License
-------

[](#license)

composer-plugin is licensed under [GNU General Public License v2 (or later)](./LICENSE.txt)

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance97

Actively maintained with recent releases

Popularity35

Limited adoption so far

Community38

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~48 days

Recently: every ~111 days

Total

35

Last Release

25d ago

Major Versions

v0.2.0 → v1.0.02021-12-22

v1.1.14 → v2.0.02023-11-20

v2.0.4 → v3.0.02024-11-14

v3.0.0 → v4.0.02024-11-25

PHP version history (2 changes)v2.0.0PHP &gt;=7.0

v3.0.0PHP &gt;=7.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/7c5869ecbb8e0eac7e8b8e0f3cf7bdd8d5fcdc4abc10a72281872c53f8639d44?d=identicon)[automattic](/maintainers/automattic)

![](https://www.gravatar.com/avatar/11609890f6e7a840715f4cfc9622d77ea64b7dfc024df5643fbf8471a18c00f3?d=identicon)[kraft](/maintainers/kraft)

![](https://www.gravatar.com/avatar/5326730499ec14e274f51b9bcc39db6aac0fb38b33849715aae0e2587a2b93df?d=identicon)[jeherve](/maintainers/jeherve)

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

---

Top Contributors

[![anomiex](https://avatars.githubusercontent.com/u/1030580?v=4)](https://github.com/anomiex "anomiex (88 commits)")[![tbradsha](https://avatars.githubusercontent.com/u/32492176?v=4)](https://github.com/tbradsha "tbradsha (27 commits)")[![zinigor](https://avatars.githubusercontent.com/u/374293?v=4)](https://github.com/zinigor "zinigor (9 commits)")[![samiff](https://avatars.githubusercontent.com/u/15803018?v=4)](https://github.com/samiff "samiff (8 commits)")[![jeherve](https://avatars.githubusercontent.com/u/426388?v=4)](https://github.com/jeherve "jeherve (6 commits)")[![coder-karen](https://avatars.githubusercontent.com/u/16754605?v=4)](https://github.com/coder-karen "coder-karen (5 commits)")[![kraftbj](https://avatars.githubusercontent.com/u/88897?v=4)](https://github.com/kraftbj "kraftbj (3 commits)")[![gmjuhasz](https://avatars.githubusercontent.com/u/36671565?v=4)](https://github.com/gmjuhasz "gmjuhasz (3 commits)")[![sdixon194](https://avatars.githubusercontent.com/u/33553323?v=4)](https://github.com/sdixon194 "sdixon194 (3 commits)")[![ice9js](https://avatars.githubusercontent.com/u/8056203?v=4)](https://github.com/ice9js "ice9js (2 commits)")[![gogdzl](https://avatars.githubusercontent.com/u/37049295?v=4)](https://github.com/gogdzl "gogdzl (2 commits)")[![manzoorwanijk](https://avatars.githubusercontent.com/u/18226415?v=4)](https://github.com/manzoorwanijk "manzoorwanijk (2 commits)")[![nunyvega](https://avatars.githubusercontent.com/u/16329583?v=4)](https://github.com/nunyvega "nunyvega (2 commits)")[![jwebbdev](https://avatars.githubusercontent.com/u/1992658?v=4)](https://github.com/jwebbdev "jwebbdev (1 commits)")[![adamwoodnz](https://avatars.githubusercontent.com/u/1017872?v=4)](https://github.com/adamwoodnz "adamwoodnz (1 commits)")[![LiamSarsfield](https://avatars.githubusercontent.com/u/43409125?v=4)](https://github.com/LiamSarsfield "LiamSarsfield (1 commits)")[![paulopmt1](https://avatars.githubusercontent.com/u/1044309?v=4)](https://github.com/paulopmt1 "paulopmt1 (1 commits)")[![psealock](https://avatars.githubusercontent.com/u/1922453?v=4)](https://github.com/psealock "psealock (1 commits)")[![robertsreberski](https://avatars.githubusercontent.com/u/8419292?v=4)](https://github.com/robertsreberski "robertsreberski (1 commits)")[![CGastrell](https://avatars.githubusercontent.com/u/157240?v=4)](https://github.com/CGastrell "CGastrell (1 commits)")

---

Tags

plugincomposeri18njetpack

### Embed Badge

![Health badge](/badges/automattic-jetpack-composer-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/automattic-jetpack-composer-plugin/health.svg)](https://phpackages.com/packages/automattic-jetpack-composer-plugin)
```

###  Alternatives

[symfony/string

Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way

1.8k777.3M1.3k](/packages/symfony-string)[dealerdirect/phpcodesniffer-composer-installer

PHP\_CodeSniffer Standards Composer Installer Plugin

601175.5M2.4k](/packages/dealerdirect-phpcodesniffer-composer-installer)[ergebnis/composer-normalize

Provides a composer plugin for normalizing composer.json.

1.1k41.4M2.8k](/packages/ergebnis-composer-normalize)[automattic/jetpack-autoloader

Creates a custom autoloader for a plugin or theme.

576.1M124](/packages/automattic-jetpack-autoloader)[gettext/languages

gettext languages with plural rules

7832.7M12](/packages/gettext-languages)[imaginaerum/magento2-language-fr-fr

Magento2 French Language Pack (fr\_FR)

43754.8k2](/packages/imaginaerum-magento2-language-fr-fr)

PHPackages © 2026

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