PHPackages                             terion/package-installer - 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. [CLI &amp; Console](/categories/cli)
4. /
5. terion/package-installer

AbandonedLibrary[CLI &amp; Console](/categories/cli)

terion/package-installer
========================

Automatic package installer for Laravel 4

v1.0.1(11y ago)493454[1 issues](https://github.com/terion-name/package-installer/issues)MITPHPPHP &gt;=5.3.0

Since Jul 26Pushed 11y ago5 watchersCompare

[ Source](https://github.com/terion-name/package-installer)[ Packagist](https://packagist.org/packages/terion/package-installer)[ RSS](/packages/terion-package-installer/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (2)Dependencies (6)Versions (3)Used By (0)

Ultimate Package Installer
==========================

[](#ultimate-package-installer)

[![version](https://camo.githubusercontent.com/9a1e9c73ebdc19ba1b3ec568e885aefe16bd37921a571e01941bf0e35fb24e13/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746572696f6e2f7061636b6167652d696e7374616c6c65722e737667)](https://packagist.org/packages/terion/package-installer)[![license](https://camo.githubusercontent.com/57dc55a9804aa5ee6f807067716130bca15f6299d4dbd1d248adbc2d5416bcf0/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f746572696f6e2f7061636b6167652d696e7374616c6c65722e737667)](https://camo.githubusercontent.com/57dc55a9804aa5ee6f807067716130bca15f6299d4dbd1d248adbc2d5416bcf0/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f746572696f6e2f7061636b6167652d696e7374616c6c65722e737667)[![downloads](https://camo.githubusercontent.com/0acabd7f74a8ffb9bf27342f2b643158474cc8210a2af033d8c4ec3906d89b8a/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f746572696f6e2f7061636b6167652d696e7374616c6c65722e737667)](https://camo.githubusercontent.com/0acabd7f74a8ffb9bf27342f2b643158474cc8210a2af033d8c4ec3906d89b8a/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f746572696f6e2f7061636b6167652d696e7374616c6c65722e737667)

This package provides a cli interface for fast and easy package install (any package, not only laravel-specific).

Example:

[![php artisan package:install barryvdh/laravel-dompdf](https://camo.githubusercontent.com/7a741551fc89081e0f14f874a1978e417c8b3ddcd4f09d30006c4ddbbc5c148a/687474703a2f2f692e696d6775722e636f6d2f4b4a6d635579482e706e67)](https://camo.githubusercontent.com/7a741551fc89081e0f14f874a1978e417c8b3ddcd4f09d30006c4ddbbc5c148a/687474703a2f2f692e696d6775722e636f6d2f4b4a6d635579482e706e67)

Why?
----

[](#why)

How do you install a package?

You go to github or packagist or google, search for desired package, see it's full name and available versions, then require it via composer's cli or manually patch `composer.json`, then you search in readme what service providers and facades this package provide and manually copypast them to config, then publish configs and assets manually... **That's annoying!** Machine must do this.

And here is the solution.

Installation
------------

[](#installation)

1. Require package:

```
composer require terion/package-installer:~1

```

2. Add to `app/config/app.php` to `providers` array:

```
'Terion\PackageInstaller\PackageInstallerServiceProvider',

```

How to use
----------

[](#how-to-use)

### 1. Search for a package or install a known one:

[](#1-search-for-a-package-or-install-a-known-one)

```
php artisan package:install theme
```

Search for a package on composer. This will output list of found packages with numeric select. **Default selection is the fisrt package in list.**

```
php artisan package:install yaap/theme
```

This will install [yaap/theme](https://github.com/yaapis/Theme) package. If there is no such package it will fallback to search.

### 2. Select version

[](#2-select-version)

When package selected you will be promted to choose a version from list of availables by number.

```
Available versions:
[1] dev-master (2014-06-22 17:54:03)
[2] 1.2.6 (2014-06-22 17:54:03)
[3] 1.2.5 (2014-06-22 17:22:37)
[4] 1.2.4 (2014-05-26 11:16:15)
[5] 1.2.3 (2014-05-25 06:44:39)
[6] 1.2.2 (2014-05-24 22:39:29)
[7] 1.2.1 (2014-05-24 22:36:43)
[8] 1.2.0 (2014-05-24 22:32:40)
[9] 1.1.1 (2014-05-24 18:07:59)
[10] 1.1.0 (2014-05-24 14:28:29)
[11] 1.0.0 (2014-04-27 17:28:38)
Select version by number [2]:
```

**Default selection is the latest stable version if present.** If no stable present — then `dev-master` is selected.

### 3. PROFIT!

[](#3-profit)

Installer will now update `composer.json`, install the package, search for ServiceProviders and Facades, patch `app/config/app.php` and publish package configs and assets. It also respects [Ryan's](https://github.com/rtablada) [package installer](https://github.com/rtablada/package-installer) `provides.json` but still will make the work without it.

```
Your choice: 1.2.6
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing yaap/theme (1.2.6)
    Loading from cache

Writing lock file
Generating autoload files
Generating optimized class loader
Package yaap/theme installed
Processing package...
Found 1 service providers:
[1] YAAP\Theme\ThemeServiceProvider
Found 1 aliases:
[1] YAAP\Theme\Facades\Theme [Theme]
```

What problems can you face with
-------------------------------

[](#what-problems-can-you-face-with)

The only problem that I've discovered is that some packages contain facades, that shouldn't be included in app config, but they do and this can break application and should be manually fixed (but this is very easy).

As an example — `orchestra/support` contains about 20 facades and they collide with Laravel facades. Package Installer handles this safely by commenting colliding aliases so in such case you should manually remove redundant aliases and uncomment old ones.

TODO:
-----

[](#todo)

- Fully automatic (silent) mode
- Passthrough parameters to composer cli
- Deal with environment-specific packages
- Unittesting

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity59

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

Every ~9 days

Total

2

Last Release

4305d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d0a98f339ff1921d99c8949ec9d345c958a27a8030840a5a4eae55c33c0782a2?d=identicon)[terion](/maintainers/terion)

---

Top Contributors

[![terion-name](https://avatars.githubusercontent.com/u/1060205?v=4)](https://github.com/terion-name "terion-name (22 commits)")

---

Tags

clilaravelpackagetool

### Embed Badge

![Health badge](/badges/terion-package-installer/health.svg)

```
[![Health](https://phpackages.com/badges/terion-package-installer/health.svg)](https://phpackages.com/packages/terion-package-installer)
```

###  Alternatives

[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k12.1M99](/packages/laravel-pulse)[tucker-eric/eloquentfilter

An Eloquent way to filter Eloquent Models

1.8k4.8M26](/packages/tucker-eric-eloquentfilter)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)[nunomaduro/laravel-console-menu

Laravel Console Menu is an output method for your Laravel/Laravel Zero commands.

815412.0k48](/packages/nunomaduro-laravel-console-menu)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[flarum/core

Delightfully simple forum software.

211.3M1.9k](/packages/flarum-core)

PHPackages © 2026

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