danielebuso / shortener

Local link shortener for Laravel 7

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Laravel Link Shortener

Latest Version on Packagist Build Status Quality Score Total Downloads

Local link shortener for Laravel 7

Installation

You can install the package via composer:

composer require danielebuso/shortener

Publish the migration and migrate

php artisan vendor:publish --tag=migrations
php artisan migrate

Usage

$short_link = Shortener::shorten('https://example.com/my-very-long-link');

$short_link->short_url // Eg. https://myapp.com/l/JedO8TSC

Customize routing

To customize the link routing add the following to your routes and customize as you wish

Route::domain('mylink.com')->group(function () {
    Route::get('{short_link}', 'ShortLinkController@resolve')->name('short_link');
});

// Then in controller
$short_link->short_url // Eg. https://mylink.com/JedO8TSC

Configuration

To customize the config either use the environment variables or publish the configuration file

php artisan vendor:publish --tag=config
Config .env Default Description
link_length SHORTENER_LINK_LENGTH 8 Number of random characters used in link generation

Testing

composer test

Upcoming features

  • Custom validity (nbf, exp)
  • Link analitycs (times opened)
  • Real tests

Security

If you discover any security related issues, please email daniele@kodesire.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Local link shortener for Laravel 7

License:MIT License


Languages

Language:PHP 100.0%