adachsoft/packagist-api-client

PHP client for Packagist API

Installs: 1

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Forks: 0

pkg:composer/adachsoft/packagist-api-client

1.0.0 2025-09-05 19:40 UTC

This package is not auto-updated.

Last update: 2025-10-18 16:26:40 UTC


README

A simple PHP client for interacting with the Packagist API.

Installation

composer require adachsoft/packagist-api-client

Quick Start

<?php

use AdachSoft\PackagistApiClient\PackagistApiClient;

$client = new PackagistApiClient('your-username', 'your-api-token');

// Search packages
$results = $client->searchPackages('symfony');

// Get package info
$package = $client->getPackageData('symfony/symfony');

// Get package statistics
$stats = $client->getPackageStats('symfony/symfony');

Features

  • Package Management: Create, edit, and update packages
  • Search: Find packages by name, tags, or type
  • Statistics: Get download statistics and general Packagist stats
  • Security: Check security advisories for packages
  • Popular Packages: List trending packages

Basic Usage

Initialize Client

$client = new PackagistApiClient($username, $apiToken);

Search Packages

// Simple search
$results = $client->searchPackages('monolog');

// Search with filters
$results = $client->searchPackages('logger', [
    'tags' => 'psr-3',
    'type' => 'library'
]);

Get Package Details

$package = $client->getPackageData('monolog/monolog');
echo $package['package']['description'];

Get Statistics

// Package stats
$stats = $client->getPackageStats('monolog/monolog');
echo "Total downloads: " . $stats['downloads']['total'];

// General stats
$stats = $client->getStatistics();
echo "Total packages: " . $stats['totals']['packages'];

Create Package (requires authentication)

$client->createPackage('https://github.com/username/repository');

Requirements

  • PHP 8.3+
  • Guzzle HTTP client

License

MIT