PHPackages                             zpmlabs/undraw-php - 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. zpmlabs/undraw-php

ActiveLibrary

zpmlabs/undraw-php
==================

Tiny client for undraw.co search (Next.js data routes) returning DTOs and SVG code on demand.

v1.0.3(6mo ago)181MITPHPPHP ^8.1

Since Oct 28Pushed 6mo agoCompare

[ Source](https://github.com/zpm-packages/undraw-php)[ Packagist](https://packagist.org/packages/zpmlabs/undraw-php)[ RSS](/packages/zpmlabs-undraw-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (5)Versions (5)Used By (1)

undraw-php
==========

[](#undraw-php)

Lightweight client for **undraw.co** search (using Next.js data routes).
Returns typed DTOs and lets you fetch **SVG code**.

Install
-------

[](#install)

```
composer require ZPMLabs/undraw-php
# You also need a PSR-18 client & PSR-17 factories (Discovery will find them).
# Example:
composer require guzzlehttp/guzzle nyholm/psr7
```

Usage
-----

[](#usage)

```
use Undraw\Factory\UndrawFactory;

$client = UndrawFactory::create(); // in-memory cache by default

$results = $client->search('music', 10); // array of Undraw\DTO\Illustration

foreach ($results as $i) {
    echo $i->title . ' => ' . $i->mediaUrl . PHP_EOL;
    $svg = $client->getSvg($i); // raw SVG string
}
```

With Laravel
------------

[](#with-laravel)

```
use Undraw\Factory\UndrawFactory;
use Undraw\UndrawClient;
use Undraw\Support\Laravel\LaravelCacheAdapter;

app()->bind(UndrawClient::class, function () {
    return UndrawFactory::create(new LaravelCacheAdapter());
});
```

With Filament
-------------

[](#with-filament)

```
    Select::make('undraw_media')
        ->searchable()
        ->getSearchResultsUsing(function (string $search) {
            /** @var \Undraw\UndrawClient $u */
            $u = app(\Undraw\UndrawClient::class);
            return collect($u->search($search, 20))
                ->mapWithKeys(fn($i) => [$i->mediaUrl => $i->title])
                ->all();
        })
        ->hint('Search undraw…');
```

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance66

Regular maintenance activity

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity47

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

Total

4

Last Release

202d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/211412089?v=4)[ZPM Labs](/maintainers/zpmlabs)[@ZPMLabs](https://github.com/ZPMLabs)

---

Top Contributors

[![sasaorasanin](https://avatars.githubusercontent.com/u/100382372?v=4)](https://github.com/sasaorasanin "sasaorasanin (6 commits)")

### Embed Badge

![Health badge](/badges/zpmlabs-undraw-php/health.svg)

```
[![Health](https://phpackages.com/badges/zpmlabs-undraw-php/health.svg)](https://phpackages.com/packages/zpmlabs-undraw-php)
```

###  Alternatives

[cakephp/cakephp

The CakePHP framework

8.8k18.5M1.6k](/packages/cakephp-cakephp)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

81733.7k](/packages/flow-php-flow)[laudis/neo4j-php-client

Neo4j-PHP-Client is the most advanced PHP Client for Neo4j

184616.9k31](/packages/laudis-neo4j-php-client)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15224.3M65](/packages/opensearch-project-opensearch-php)[wordpress/php-ai-client

A provider agnostic PHP AI client SDK to communicate with any generative AI models of various capabilities using a uniform API.

26236.6k14](/packages/wordpress-php-ai-client)[growthbook/growthbook

PHP SDK for GrowthBook, the feature flagging and A/B testing platform

202.9M3](/packages/growthbook-growthbook)

PHPackages © 2026

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