

ClipURL - Laravel URL Shortener ClipURL - Laravel URL Shortener
Powerful Laravel-based URL shortener with admin panel, analytics, password protection, expiration, and user management.
ClipURL - Laravel URL Shortener
Powerful Laravel-based URL shortener with admin panel, analytics, password protection, expiration...
Overview
๐ Full Description
ClipURL is a professional Laravel-based URL shortener web application packed with advanced features such as real-time click analytics, admin panel, guest & user link management, password protection, expiration control, and email notifications.
Built using Laravel 10, Bootstrap 5, and a clean modular architecture, this tool is perfect for developers, marketers, or businesses who want a branded, secure, and self-hosted short link service
Features
โจ Features
- โ Clean Bootstrap 5 frontend (fully responsive)
- โ Admin dashboard with settings panel
- โ Custom short links with aliases
- โ Guest shortening (optional)
- โ Password-protected short URLs
- โ Expiration date for short URLs
- โ QR Code auto-generation
- โ Click tracking and analytics (IP, location, platform, referrer)
- โ CSV Bulk link shortening
- โ Email notification settings (user registration & link creation)
- โ Full user login/register system (Laravel Breeze)
- โ Settings stored in database
- โ Session-based guest history
- โ Admin link restriction policies
- โ Protected admin routes
- โ Laravel 10.x & PHP 8 compatible
Requirements
โ๏ธ Requirements
- PHP 8.0 or higher
- Composer
- Node.js + NPM
- MySQL Database
- Laravel CLI
Instructions
๐ Installation Instructions
๐ฆ 1. Download the Project Files
# Unzip the project into your web directory cd /path-to-your-project/
๐ง 2. Install Backend Dependencies
Make sure you have Composer installed. Then run:
composer install
๐จ 3. Install Frontend Dependencies
Install Node.js dependencies and compile frontend assets:
npm install npm run build
โ For development, you can use:
npm run dev
๐๏ธ 4. Environment Setup
Copy the .env.example
file and generate the application key:
cp .env.example .env php artisan key:generate
Now open the .env
file in any text editor and configure the following:
APP_NAME=ClipURL APP_URL=http://localhost:8000 DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=clipurl DB_USERNAME=root DB_PASSWORD= [email protected]
โ
Make sure your database clipurl
exists in MySQL.
๐งฑ 5. Run Migrations and Seed Admin Account
Run this command to create all tables and seed the admin account:
php artisan migrate --seed
This will create:
-
All necessary tables:
-
users
,short_urls
,click_logs
,settings
,notification_settings
-
- Default admin account:
Email: [email protected] Password: password
๐ Tip: You can promote any user to admin with:
php artisan tinker >>> AppModelsUser::where('email', '[email protected]')->update(['is_admin' => true]);
โถ๏ธ 6. Start the Laravel App
php artisan serve
Then open in your browser:
http://localhost:8000
โ๏ธ 7. Email Notifications (Mailtrap Setup)
To enable email notifications for:
- New user registrations
- New shortened links
Configure Mailtrap in your .env
file (create a Mailtrap account first):
MAIL_MAILER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=your_mailtrap_username MAIL_PASSWORD=your_mailtrap_password MAIL_ENCRYPTION=null [email protected] MAIL_FROM_NAME="ClipURL"
๐ฌ Emails will be sent to the address defined in ADMIN_EMAIL
.
๐ก๏ธ 8. Admin Panel Access
Admin dashboard is accessible at:
http://localhost:8000/admin/dashboard
Protected by middleware. Only users with is_admin = true
can access it.
๐งช 9. Run Tests (Optional)
php artisan test
๐ฆ Folder Structure
app/ โโโ Http/ โ โโโ Controllers/ โ โโโ UrlShortenerController.php โ โโโ Admin/AdminDashboardController.php โโโ Models/ โ โโโ ShortUrl.php โ โโโ ClickLog.php โ โโโ Setting.php โ โโโ NotificationSetting.php resources/ โโโ views/ โโโ auth/ โโโ admin/ โโโ layouts/ โโโ partials/ โโโ ...
Category | Scripts & Code / PHP Scripts / Links |
First release | 20 July 2025 |
Last update | 20 July 2025 |
Software version | PHP 8.0, PHP 8.1, PHP 8.3 |
Files included | .php, .css, .html, .sql, Javascript .js |
Tags | php script, admin panel, URL Shortener, short url, laravel, qr code, link management, password protected link, link expiration, url analytics, custom alias, bulk url shortener |