milon/jigsaw-url-shortener

A URL Shortener for your Jigsaw powered website

Maintainers

👁 milon

Package info

github.com/milon/jigsaw-url-shortener

Language:Blade

pkg:composer/milon/jigsaw-url-shortener

Statistics

Installs: 754

Dependents: 0

Suggesters: 0

Stars: 1

Open Issues: 0

v1.0.0 2024-08-02 19:05 UTC

Requires

Requires (Dev)

None

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 8eb98156e29d605f03a4f5bdf4ff76241c7a127c

  • Nuruzzaman Milon <contact.woop@milon.im>

This package is auto-updated.

Last update: 2026-05-29 02:05:54 UTC


README

👁 banner

Getting Started

This can be used to host several link if you already have a Jigsaw powered site. Let's say you have various social links and you want a easy way to share all of those. Rather than remember all the different username and url patterns or these different website, you can now have a consistent format.

For example, you have a twitter, linkedin and facebook page. Each of them has different url pattern, but now you can use a common pattern. For instance, if my website's url is http://milon.im, now I can have http://milon.im/twitter, http://milon.im/facebook and http://milon.im/linkedin and these will redirect to the origin website.

Requirements

  • PHP 8.1 or higher
  • Jigsaw 1.7 or higher

Installation

composer require milon/jigsaw-url-shortener

Setup and Usage

First you need to create a new entry in config file named urlRedirects.

[
 ...,
 'urlRedirects' => [
 [
 'filename' => 'twitter',
 'url' => 'https://twitter.com/to_milon',
 ],
 [
 'filename' => 'github',
 'url' => 'https://github.com/milon',
 ],
 ],
 ...
]

Alternative way

For easier readability, I recommend export this config to a separate file. You can create a file named redirects.php in the root folder, which should look like this-

<?php

return [
 [
 'filename' => 'twitter',
 'url' => 'https://twitter.com/to_milon',
 ],
 [
 'filename' => 'github',
 'url' => 'https://github.com/milon',
 ],
];

And the config file should look like this-

[
 ...,
 'urlRedirects' => require_once(__DIR__ . '/redirects.php'),
 ...
]

Then in the bootstarp.php file, register a new listener to afterBuild event.

$events->afterBuild(Milon\JigsawUrlShortener\GenerateUrlRedirect::class);

Now, build the site like normal.

License

This package is published under MIT license.

Author

Feel free to email me, if you have any question.