PHPackages                             vasilgerginski/filament-short-url - 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. vasilgerginski/filament-short-url

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

vasilgerginski/filament-short-url
=================================

Filament Short URL with marketing fields (description, price, UTM parameters)

v1.2.0(5mo ago)04571MITPHPPHP ^8.2

Since Dec 2Pushed 5mo agoCompare

[ Source](https://github.com/vasilGerginski/filament-short-url)[ Packagist](https://packagist.org/packages/vasilgerginski/filament-short-url)[ Docs](https://github.com/vasilgerginski/filament-short-url)[ GitHub Sponsors](https://github.com/a21ns1g4ts)[ RSS](/packages/vasilgerginski-filament-short-url/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (12)Versions (11)Used By (1)

Filament ShortURL
=================

[](#filament-shorturl)

Filament admin panel integration for [ash-jc-allen/short-url](https://github.com/ash-jc-allen/short-url) with marketing fields support.

Features
--------

[](#features)

- Full CRUD for short URLs
- Marketing fields: description, price/currency, UTM parameters
- QR code generation
- Visit tracking and statistics
- Bulk actions (activate/deactivate, toggle tracking)
- Copy URL to clipboard

Requirements
------------

[](#requirements)

- PHP ^8.2
- Laravel ^11.0
- Filament ^3.2 || ^4.0

Installation
------------

[](#installation)

Install the package via composer:

```
composer require vasilgerginski/filament-short-url
```

Publish and run the migrations:

```
php artisan vendor:publish --provider="AshAllenDesign\ShortURL\Providers\ShortURLProvider"
php artisan vendor:publish --tag="filament-short-url-migrations"
php artisan migrate
```

Panel Setup
-----------

[](#panel-setup)

Register the plugin in your Filament panel:

```
use VasilGerginski\FilamentShortUrl\FilamentShortUrlPlugin;

->plugins([
    FilamentShortUrlPlugin::make()
])
```

Marketing Fields
----------------

[](#marketing-fields)

This package extends the base short URL with marketing-specific fields:

FieldDescription`description`Short description to identify the URL`price`Campaign cost for ROI tracking`currency`Currency (USD, EUR, GBP, BGN, etc.)`utm_source`UTM source parameter`utm_medium`UTM medium parameter`utm_campaign`UTM campaign parameter`utm_term`UTM term parameter`utm_content`UTM content parameterConfiguration
-------------

[](#configuration)

Publish the config file:

```
php artisan vendor:publish --tag="filament-short-url-config"
```

### Tenant Scoping

[](#tenant-scoping)

Enable multi-tenancy support:

```
// config/filament-short-url.php
return [
    'tenant_scope' => true,
];
```

Testing
-------

[](#testing)

```
composer test
```

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

42

—

FairBetter than 88% of packages

Maintenance72

Regular maintenance activity

Popularity17

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 91.1% 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 ~46 days

Recently: every ~88 days

Total

10

Last Release

158d ago

Major Versions

v0.2.0 → v1.0.02025-12-15

PHP version history (2 changes)v0.1.0PHP ^8.1

v0.2.0PHP ^8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/15899179?v=4)[Vasil Nedelchev](/maintainers/vaseto)[@vaseto](https://github.com/vaseto)

---

Top Contributors

[![a21ns1g4ts](https://avatars.githubusercontent.com/u/11599205?v=4)](https://github.com/a21ns1g4ts "a21ns1g4ts (41 commits)")[![vasilGerginski](https://avatars.githubusercontent.com/u/1145019?v=4)](https://github.com/vasilGerginski "vasilGerginski (3 commits)")[![alinme](https://avatars.githubusercontent.com/u/122682052?v=4)](https://github.com/alinme "alinme (1 commits)")

---

Tags

laravelmarketingfilamentUTMfilament-short-urlvasilgerginski

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/vasilgerginski-filament-short-url/health.svg)

```
[![Health](https://phpackages.com/badges/vasilgerginski-filament-short-url/health.svg)](https://phpackages.com/packages/vasilgerginski-filament-short-url)
```

###  Alternatives

[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)[stephenjude/filament-two-factor-authentication

Filament Two Factor Authentication: Google 2FA + Passkey Authentication

84215.9k9](/packages/stephenjude-filament-two-factor-authentication)[ysfkaya/filament-phone-input

A phone input component for Laravel Filament

3161.3M25](/packages/ysfkaya-filament-phone-input)[stephenjude/filament-feature-flags

Filament implementation of feature flags and segmentation with Laravel Pennant.

122177.8k1](/packages/stephenjude-filament-feature-flags)[wsmallnews/filament-nestedset

Filament nestedset tree builder powered by kalnoy/nestedset with Filament v4 and v5 support

197.8k19](/packages/wsmallnews-filament-nestedset)[tapp/filament-form-builder

User facing form builder using Filament components

132.4k3](/packages/tapp-filament-form-builder)

PHPackages © 2026

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