PHPackages                             xenokore/osrs-stats-generator - 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. [Image &amp; Media](/categories/media)
4. /
5. xenokore/osrs-stats-generator

ActiveLibrary[Image &amp; Media](/categories/media)

xenokore/osrs-stats-generator
=============================

OSRS stats image generator library

0.2(3y ago)03MITPHP

Since May 21Pushed 3y ago1 watchersCompare

[ Source](https://github.com/yani/osrs-stats-generator)[ Packagist](https://packagist.org/packages/xenokore/osrs-stats-generator)[ Docs](https://github.com/yani/osrs-stats-generator)[ RSS](/packages/xenokore-osrs-stats-generator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (4)Used By (0)

OSRS Stats image generator
==========================

[](#osrs-stats-image-generator)

OSRS stats image generator library for PHP.

### Installation

[](#installation)

```
composer require xenokore/osrs-stats-generator

```

Image generation uses the PHP extension `gd`.

There's an endpoint script included which uses the `cURL` extension to look up a user from the highscores. cURL is not required if using the library directly in your project.

### Usage

[](#usage)

You can use the endpoint script to look up a user from the highscores from your browser:

```
/public/index.php?user=noize
```

Or pass `GET` parameters for the skills you want to set:

```
/public/index.php?hitpoints=50,90&attack=80,75&mining=99
```

You can set the current level and max level by separating them with a `,`. This is useful for boosted stats or to show current hitpoints.

You can find a list of skill names below. The total level is calculated automatically.

### Library usage

[](#library-usage)

```
// Either set skills using (array)[(int), (int)] or (int).
// Skills are defaulted to their lowest lvl (10 for hitpoints and 1 for others) and are not required to be set.
$skills = new \Xenokore\OSRS\StatsGenerator\Skills([
        'hitpoints' => [5, 10],
        'attack' => 10
    ]
);

$img_gen = new \Xenokore\OSRS\StatsGenerator\ImageGenerator($skills);

// Set image headers:
\header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
\header('Last-Modified: ' . \gmdate("D, d M Y H:i:s") . ' GMT');
\header('Cache-Control: no-store, no-cache, must-revalidate');
\header('Cache-Control: post-check=0, pre-check=0', false);
\header('Pragma: no-cache');
\header('Content-type: image/png');

// Output image
echo $img_gen->generate();
```

### Skill names

[](#skill-names)

```
attack
defence
strength
hitpoints
ranged
prayer
magic
cooking
woodcutting
fletching
fishing
firemaking
crafting
smithing
mining
herblore
agility
thieving
slayer
farming
runecraft
hunter
construction

```

Total level is calculated automatically.

Note that it's `runecraft` instead of *runecrafting*

### Example output

[](#example-output)

[![image](https://user-images.githubusercontent.com/6956790/169636088-497a0630-f68f-4a14-b1a4-3e658b5ccfa3.png)](https://user-images.githubusercontent.com/6956790/169636088-497a0630-f68f-4a14-b1a4-3e658b5ccfa3.png)

### License

[](#license)

**MIT**

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity40

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

Total

3

Last Release

1449d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4f952a864ff95e6dc68693bf6a5fff8320a3511840d1b9f1a0722e8f41b5385a?d=identicon)[Yani](/maintainers/Yani)

---

Top Contributors

[![yani](https://avatars.githubusercontent.com/u/6956790?v=4)](https://github.com/yani "yani (1 commits)")

---

Tags

imagegeneratorstatsosrs

### Embed Badge

![Health badge](/badges/xenokore-osrs-stats-generator/health.svg)

```
[![Health](https://phpackages.com/badges/xenokore-osrs-stats-generator/health.svg)](https://phpackages.com/packages/xenokore-osrs-stats-generator)
```

###  Alternatives

[intervention/image

PHP Image Processing

14.3k194.3M2.2k](/packages/intervention-image)[league/glide

Wonderfully easy on-demand image manipulation library with an HTTP based API.

2.6k51.2M116](/packages/league-glide)[liip/imagine-bundle

This bundle provides an image manipulation abstraction toolkit for Symfony-based projects.

1.7k38.3M217](/packages/liip-imagine-bundle)[spatie/image

Manipulate images with an expressive API

1.4k54.4M138](/packages/spatie-image)[multiavatar/multiavatar-php

Multicultural Avatar Generator

653150.0k4](/packages/multiavatar-multiavatar-php)[intervention/image-laravel

Laravel Integration of Intervention Image

1496.5M102](/packages/intervention-image-laravel)

PHPackages © 2026

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