knplabs/packagist-api

Packagist API client.

Installs: 33 334

Dependents: 28

Stars: 79

Watchers: 24

Forks: 20

Open Issues: 3

Language: PHP

v1.2 2014-09-17 13:49 UTC

README

Build Status HHVM Status Latest Stable Version Total Downloads Dependency Status Reference Status

Simple object oriented wrapper for Packagist API.

Installation

The recommended way to install Packagist API is through composer:

{
    "require": {
        "knplabs/packagist-api": "1.*@dev"
    }
}

Usage

Search for packages:
<?php

$client = new Packagist\Api\Client();

foreach ($client->search('sylius') as $result) {
    echo $result->getName();
}

// Outputs:
sylius/sylius
sylius/resource-bundle
sylius/cart-bundle
sylius/flow-bundle
sylius/sales-bundle
sylius/shipping-bundle
sylius/taxation-bundle
sylius/money-bundle
sylius/assortment-bundle
sylius/addressing-bundle
sylius/payments-bundle
sylius/taxonomies-bundle
sylius/inventory-bundle
sylius/settings-bundle
sylius/promotions-bundle
...
Get package details:
<?php

$package = $client->get('sylius/sylius');

printf(
    'Package %s. %s.',
    $package->getName(),
    $package->getDescription()
);

// Outputs:
Package sylius/sylius. Modern ecommerce for Symfony2.
List all packages:
<?php

foreach ($client->all() as $package) {
    echo $package;
}

// Outputs:
abhinavsingh/jaxl
abishekrsrikaanth/fuel-util
abmundi/database-commands-bundle
...
They can be filtered by type or vendor:
<?php

$client->all(array('type' => 'library'));
$client->all(array('vendor' => 'sylius'));
Custom Packagist Repositories

You can also set a custom Packagist Repository URL:

<?php

$client->setPackagistUrl('https://custom.packagist.site.org');

License

packagist-api is licensed under the MIT License - see the LICENSE file for details.