Define aliases for your favorite Composer packages.

v1.0.1 2018-06-05 14:41 UTC

This package is auto-updated.

Last update: 2020-03-09 03:55:22 UTC


Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Define aliases for your favorite packages, making usage as simple as crap require monolog.


PHP 5.6+ or 7.0+ required.

Because using multiple global Composer packages can create dependency conflicts, I recommend using consolidation/cgr over composer global require:

cgr geekish/crap

If you don't mind descending into global dependency hell:

composer global require geekish/crap


To define your aliases (version constraints are optional):

crap alias monolog monolog/monolog:^1.21

To use your aliases:

crap require monolog
crap update monolog
crap remove monolog

To remove an alias:

crap unalias monolog

View a list of defined alias:

crap list

These commands simply find your aliases, and call the Composer commands with the real package names. If you provided a version constraint when defining your alias, crap will use this by default. You may provide a version constraint on the require and update commands; this will override any default.

The commands project, require, update, and remove all accept the same options/flags as the Composer commands that they call. For reference, see Composer's Commands documentation.


I'm lazy. I tried to create global shell aliases for packages that I used often. It worked, but if I typed out the full package name, I would get monolog/monolog/monolog/monolog. I also tried to write a Composer plugin, but there was no way to override the incoming package argument. So, I wrote crap.

Oh, the name? I was going to call it cra, and call the main class Crapp. Then I thought of the acronym, and it was just too good not to use.

Yes, it is totally inspired by Spongebob's POOP.

Change log

Please see CHANGELOG for more information what has changed recently.


After a composer install, to run the unit tests via phpunit:

composer test


Please see CONTRIBUTING and CONDUCT for details.


If you discover any security related issues, please email instead of using the issue tracker.



The MIT License (MIT). Please see License File for more information.