PHPackages                             joomlatools/composer - 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. joomlatools/composer

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

joomlatools/composer
====================

A Composer plugin to install Joomla extensions into your installation.

v2.0.2(4y ago)5332.9k↓22.2%14[3 issues](https://github.com/joomlatools/joomlatools-composer/issues)20GPL-3.0-onlyPHP

Since Nov 5Pushed 3y ago15 watchersCompare

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

READMEChangelog (10)Dependencies (1)Versions (25)Used By (20)

Joomlatools Composer Installer
==============================

[](#joomlatools-composer-installer)

This Composer plugin will install extensions into your Joomla setup.

Usage
-----

[](#usage)

### Defining a package

[](#defining-a-package)

The easiest way to get started is by defining a custom package in your `composer.json` file. All you need is the package file for the extension you wish to install. (ie. the installer file you downloaded from the vendor's website)

Update the `composer.json` file in the root directory of your Joomla installation by adding the following properties:

```
{
    	"repositories": [
        	{
            	"type": "package",
            	"package": {
                	"name": "vendor/extension",
                	"type": "joomlatools-extension",
                	"version": "1.0.0",
                	"dist": {
                    	"url": "file:////Users/johndoe/Downloads/com_extension.1.0.0.tar.gz",
                    	"type": "tar"
                	},
                	"require": {
                    	"joomlatools/composer": "*"
                	}
            	}
        	}
    	],

        ...

    	"require": {
	        ...
    		"vendor/extension": "1.0.0"
    	}
}
```

Using this JSON file, we have now defined our own custom package. Pay attention to the following settings:

- The `type` has to be set to `joomlatools-extension`
- Make sure the `url` directive points to the location of the install package.

Executing `composer install` will now fetch the `joomlatools/composer` plugin and use it to install the package into your Joomla installation.

For more information on creating these custom packages for projects which do not support Composer, see the [Composer docs](http://getcomposer.org/doc/05-repositories.md#package-2).

### Creating a custom package

[](#creating-a-custom-package)

To make use of all Composer's features, eg. upgrading to a newer version, you are better off creating a package using your extension's source code.

The package definition should contain the following basic information to make it installable into Joomla:

```
{
    	"name": "vendor/my-extension",
		"type": "joomlatools-extension",
    	"require": {
        	"joomlatools/composer": "*"
    	}
}
```

If you want to make your extension available directly from Github or any other VCS, you want to make sure that the file layout in your repo resembles your install package.

If you want to move the main Joomla installer manifest to the repository root before running the installation, provide the following information in your `composer.json`file:

```
{
	"extra": {
    	"manifest": "path/to/manifest/joomlatools.xml"
	}
}
```

If the package is for a Joomlatools Framework reusable component, provide the following information in your `composer.json`file:

```
{
	"extra": {
    	"joomlatools-component": "component-name"
	}
}
```

You can now publish your extension on [Packagist](https://packagist.org/) or serve it yourself using your own [Satis repository](http://getcomposer.org/doc/articles/handling-private-packages-with-satis.md).

For more information on rolling your own package, please refer to the [Composer documentation](http://getcomposer.org/doc/02-libraries.md).

### More

[](#more)

For more information, FAQ and examples, refer to our [developer documentation](https://www.joomlatools.com/developer/tools/composer/).

Development
-----------

[](#development)

Refer to [the wiki](https://github.com/joomlatools/joomlatools-composer/wiki#development-set-up) on how to set up this repository for local development.

Debugging
---------

[](#debugging)

Having trouble? You can increase Composer's verbosity setting (`-v|vv|vvv`) to gather more information. Increasing Composer's verbosity will also enable Joomla's log messages.

Requirements
------------

[](#requirements)

- Composer
- Joomla version 3.6+

Contributing
------------

[](#contributing)

The `joomlatools/composer` plugin is an open source, community-driven project. Contributions are welcome from everyone. We have [contributing guidelines](CONTRIBUTING.md) to help you get started.

Contributors
------------

[](#contributors)

See the list of [contributors](https://github.com/joomlatools/joomlatools-composer/contributors).

License
-------

[](#license)

The `joomlatools/composer` plugin is free and open-source software licensed under the [GPLv3 license](LICENSE.txt).

Community
---------

[](#community)

Keep track of development and community news.

- Follow [@joomlatoolsdev on Twitter](https://twitter.com/joomlatoolsdev)
- Join [joomlatools/dev on Gitter](http://gitter.im/joomlatools/dev)
- Read the [Joomlatools Developer Blog](https://www.joomlatools.com/developer/blog/)
- Subscribe to the [Joomlatools Developer Newsletter](https://www.joomlatools.com/developer/newsletter/)

###  Health Score

44

—

FairBetter than 91% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity40

Moderate usage in the ecosystem

Community35

Small or concentrated contributor base

Maturity73

Established project with proven stability

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

Recently: every ~100 days

Total

21

Last Release

1688d ago

Major Versions

v1.2.0 → v2.0.02021-09-23

### Community

Maintainers

![](https://www.gravatar.com/avatar/8c3bae4a225e432a121658426e6e8e37e7e130ef939373079d13b579007b37a1?d=identicon)[joomlatools](/maintainers/joomlatools)

---

Top Contributors

[![stevenrombauts](https://avatars.githubusercontent.com/u/77368?v=4)](https://github.com/stevenrombauts "stevenrombauts (18 commits)")[![ercanozkaya](https://avatars.githubusercontent.com/u/90382?v=4)](https://github.com/ercanozkaya "ercanozkaya (13 commits)")[![yiendos](https://avatars.githubusercontent.com/u/3769817?v=4)](https://github.com/yiendos "yiendos (12 commits)")[![johanjanssens](https://avatars.githubusercontent.com/u/266640?v=4)](https://github.com/johanjanssens "johanjanssens (9 commits)")[![magneticmg](https://avatars.githubusercontent.com/u/364980?v=4)](https://github.com/magneticmg "magneticmg (3 commits)")[![cdekok](https://avatars.githubusercontent.com/u/190633?v=4)](https://github.com/cdekok "cdekok (3 commits)")[![soxyl](https://avatars.githubusercontent.com/u/7266755?v=4)](https://github.com/soxyl "soxyl (1 commits)")[![bitdeli-chef](https://avatars.githubusercontent.com/u/3092978?v=4)](https://github.com/bitdeli-chef "bitdeli-chef (1 commits)")[![vikijel](https://avatars.githubusercontent.com/u/2683048?v=4)](https://github.com/vikijel "vikijel (1 commits)")[![ienev](https://avatars.githubusercontent.com/u/1704329?v=4)](https://github.com/ienev "ienev (1 commits)")

---

Tags

composercomposerinstallerextensionjoomla

### Embed Badge

![Health badge](/badges/joomlatools-composer/health.svg)

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

###  Alternatives

[craftcms/plugin-installer

Craft CMS Plugin Installer

283.3M4](/packages/craftcms-plugin-installer)[opengento/composer-registration-plugin

This plugin allows to compile the Magento2 components registrations on composer install/update.

111.6k](/packages/opengento-composer-registration-plugin)

PHPackages © 2026

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