PHPackages                             noxlogic/shortid - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. noxlogic/shortid

AbandonedLibrary[Utility &amp; Helpers](/categories/utility)

noxlogic/shortid
================

Short ID generator as alternative for public UUIDs

17

Since May 4Pushed 9y ago2 watchersCompare

[ Source](https://github.com/jaytaph/ShortId)[ Packagist](https://packagist.org/packages/noxlogic/shortid)[ RSS](/packages/noxlogic-shortid/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

A simple short ID generator as an alternative for UUIDs

This package is based on the blogpost: and others.

Usage:

```
composer require noxlogic/shortid

```

In your code:

```
$id = ShortId::generate();

```

Or a bit more in control:

```
$generator = new Gmp();
$encoder = new Base58();
$id = ShortId::generate($generator, $encoder);

```

Generators
==========

[](#generators)

These are the actual generators that converts the generated number. This can be done in multiple ways but by leveraging extensions like GMP (and possibly BCMATH) should speed up generation. Currently there is a plain generator and a GMP generator. When possible, the shortner will use GMP when available.

Encoders
========

[](#encoders)

This will convert the actual number into something that can be used on your website by encoding the data. There are two: base64, which will encode in a generic way, and base58 encoder, which will compact the number even a bit more. It will also generate only url-safe numbers by not using some url-unsafe characters that base64 uses.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/19b14ca62f80ce8c77ae749ddf04e2d4077451db9f701f3bd37dec1dc950c76b?d=identicon)[JayTaph](/maintainers/JayTaph)

---

Top Contributors

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

### Embed Badge

![Health badge](/badges/noxlogic-shortid/health.svg)

```
[![Health](https://phpackages.com/badges/noxlogic-shortid/health.svg)](https://phpackages.com/packages/noxlogic-shortid)
```

PHPackages © 2026

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