This is a URL shortener featuring a Laravel backend and a Vue.js frontend.
It's main features are:
- Shorten links
- Short URL format: example.com/[hash].
- The Short URL Validation & Duplicate Check.
- Input URL validation.
- The URL shortened till 6 symbols hash, which contains alphanumeric symbols.
- List for previously created URLs.
- Scan Input URL for Malware.
- Short URL redirection to the original URL.
- Vue frontend interacting with the Laravel API
- Clone this repository
git clone git@github.com:arshohag/url-shortener.git
- Install dependencies
composer install
- Copy .env.example to .env
cp .env.example .env
- Generate app key
php artisan key:generate
- Set these keys in .env.
APP_URL
MIX_APP_URL
DB_HOST
DB_PORT
DB_DATABASE
DB_USERNAME
DB_PASSWORD
CLOUDMERSIVE_API_KEY
CLOUDMERSIVE_BASE_URL
- Run Migrations
php artisan migrate
- Install dependencies
npm install
- Compile dependencies
npm run dev
- URL List - http://127.0.0.1:8000/admin/list
- Create URL - http://127.0.0.1:8000/admin/create
For scanning safe URL, cloudmersive is used. Check their documentaion and create a free account to get an API key.
Pull requests are welcome. Please open an issue to discuss.
GPL-3.0-only. Please see the license file for more information.