A library for shortening URLs and decoding shortcodes back into original links. It's based on clearly separated interfaces (repository, validator, code generator) and PSR-14 events.
- Minimal dependencies
- Extensibility through custom interface implementations
- Events during encoding/decoding and errors
composer require nimp/observeruse Nimp\Linkloom\Linkloom;
$shortener = new UrlShortener(
new Repository(),
new Validator(),
new Generator(),
new EventDispatcher(
new ListenerProvider()
),
);
$url = 'https://example.org';
$core = $shortener->encode($url);
$urlDecoder = $shortener->decode($core);composer install && composer test