PHPackages                             andrzejkupczyk/url-shortener - 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. andrzejkupczyk/url-shortener

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

andrzejkupczyk/url-shortener
============================

A simple library to generate shortened URLs

v3.0.0(5y ago)010.0k[1 issues](https://github.com/andrzejkupczyk/url-shortener/issues)MITPHPPHP ^7.4 || ^8.0

Since Mar 24Pushed 5y agoCompare

[ Source](https://github.com/andrzejkupczyk/url-shortener)[ Packagist](https://packagist.org/packages/andrzejkupczyk/url-shortener)[ RSS](/packages/andrzejkupczyk-url-shortener/feed)WikiDiscussions master Synced yesterday

READMEChangelog (4)Dependencies (10)Versions (8)Used By (0)

URL Shortener
=============

[](#url-shortener)

[![PHP requirement](https://camo.githubusercontent.com/f55b79daf25ccdc0f142f18596958440ccd88dc501089de7cf85bb25fb5d636f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f6c6f676f3d706870267374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/f55b79daf25ccdc0f142f18596958440ccd88dc501089de7cf85bb25fb5d636f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f6c6f676f3d706870267374796c653d666f722d7468652d6261646765)[![GitHub tag (latest SemVer)](https://camo.githubusercontent.com/c2581151ba154387f9bfbe0bfb9374e50aa8e7f4ea01bafa8b6eba168b8bd87a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f7461672f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f736f72743d73656d766572267374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/c2581151ba154387f9bfbe0bfb9374e50aa8e7f4ea01bafa8b6eba168b8bd87a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f7461672f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f736f72743d73656d766572267374796c653d666f722d7468652d6261646765)[![GitHub license](https://camo.githubusercontent.com/8d39ad7edff7c4b76ca2fe6ac38939d9ac05e07c32f60805255465ea1592118b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f7374796c653d666f722d7468652d6261646765)](https://github.com/andrzejkupczyk/url-shortener/blob/main/LICENSE "License")[![Build status](https://camo.githubusercontent.com/c47e8fefde614942027ac38cbaba9d42ab7bb7c669d65123e95aea17814554d0/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65722f6d61737465723f6c6f676f3d747261766973267374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/c47e8fefde614942027ac38cbaba9d42ab7bb7c669d65123e95aea17814554d0/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65722f6d61737465723f6c6f676f3d747261766973267374796c653d666f722d7468652d6261646765)[![Code quality](https://camo.githubusercontent.com/9cb32f6ca1e9a911752abde3efb8cc7ed52d9f0720224b1d5491982ac188ca6f/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f7175616c6974792f672f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f6c6f676f3d7363727574696e697a6572267374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/9cb32f6ca1e9a911752abde3efb8cc7ed52d9f0720224b1d5491982ac188ca6f/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f7175616c6974792f672f616e64727a656a6b7570637a796b2f75726c2d73686f7274656e65723f6c6f676f3d7363727574696e697a6572267374796c653d666f722d7468652d6261646765)

A simple yet easily extendable library to generate [shortened URLs](https://en.wikipedia.org/wiki/URL_shortening) using different providers.

Install
-------

[](#install)

Via Composer

```
composer require andrzejkupczyk/url-shortener

```

Examples of use
---------------

[](#examples-of-use)

### Creating short URLs

[](#creating-short-urls)

```
$shortener = UrlShortener::bitly($apiUri, $apiKey);

$link = $shortener->shorten(new Url('https://github.com/andrzejkupczyk/url-shortener'));

print($link->shortUrl()); // http://bit.ly/2Dkm8SJ
```

### Expanding shortened URLs

[](#expanding-shortened-urls)

```
$shortener = UrlShortener::bitly($apiUri, $apiKey);

$link = $shortener->expand(new Url('http://bit.ly/2Dkm8SJ'));

print($link->longUrl()); // https://github.com/andrzejkupczyk/url-shortener
```

Supported providers
-------------------

[](#supported-providers)

ShorteningExpandingBranding[Bitly](https://bit.ly/)✔️✔️✔️[Firebase Dynamic Links](https://firebase.google.com/docs/dynamic-links/)✔️❌✔️[TinyURL](https://tinyurl.com/)✔️❌❌Laravel support
---------------

[](#laravel-support)

It is possible to use this package easily within a Laravel &gt;=5.5 application (it is configured for discovery).

### Artisan commands

[](#artisan-commands)

```
url:expand {url}   Expand short URL
url:shorten {url}  Shorten long URL
```

### Configuration (not required)

[](#configuration-not-required)

Publish and modify the configuration file:

```
php artisan vendor:publish --provider="WebGarden\UrlShortener\LaravelServiceProvider"

```

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity73

Established project with proven stability

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

Recently: every ~219 days

Total

7

Last Release

1913d ago

Major Versions

v0.1.0 → v1.0.02018-03-24

v1.1.0 → v2.0.02018-09-22

v2.0.3 → v3.x-dev2021-02-14

PHP version history (3 changes)v0.1.0PHP ^7.0

v1.1.0PHP ^7.1

v3.x-devPHP ^7.4 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/28ff3e1c0c98bc1309d674447346f18f7da7ceb799c79cc524d68d23c5d6b27b?d=identicon)[andrzejkupczyk](/maintainers/andrzejkupczyk)

---

Top Contributors

[![andrzejkupczyk](https://avatars.githubusercontent.com/u/11018286?v=4)](https://github.com/andrzejkupczyk "andrzejkupczyk (51 commits)")

---

Tags

bitlyfdlfirebase-dynamic-linkslaraveltinyurl

###  Code Quality

Static AnalysisPsalm

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/andrzejkupczyk-url-shortener/health.svg)

```
[![Health](https://phpackages.com/badges/andrzejkupczyk-url-shortener/health.svg)](https://phpackages.com/packages/andrzejkupczyk-url-shortener)
```

###  Alternatives

[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.8k4.3k](/packages/shlinkio-shlink)[ralphjsmit/laravel-helpers

A package containing handy helpers for your Laravel-application.

13704.6k2](/packages/ralphjsmit-laravel-helpers)[dhlparcel/magento2-plugin

DHL Parcel plugin for Magento 2

11180.5k2](/packages/dhlparcel-magento2-plugin)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

255.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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