irazasyed / larasupport by irazasyed

Adds Laravel Package Support in Lumen.
480,489
127
5
Package Data
Maintainer Username: irazasyed
Maintainer Contact: syed+gh@lukonet.com (Irfaq Syed)
Package Create Date: 2015-05-24
Package Last Update: 2022-12-04
Home Page: https://irazasyed.github.io/larasupport
Language: PHP
License: MIT
Last Refreshed: 2024-04-25 15:18:08
Package Statistics
Total Downloads: 480,489
Monthly Downloads: 9,383
Daily Downloads: 442
Total Stars: 127
Total Watchers: 5
Total Forks: 18
Total Open Issues: 1

Larasupport Package

Join the PHP Chat community Package for Lumen Latest Version on Packagist Software License Total Downloads FOSSA Status

Laravel Support for Lumen: Adds missing helpers that are not being made to the core of Lumen. Lets you use Laravel Packages in Lumen.

There are some helper functions that are available in core of Laravel framework which are being used in Laravel Packages. Now because of these helpers missing in core of the Lumen, You won't be able to use those amazing Laravel Packages.

I had submited PRs as well as created issue tickets in Lumen to add these helpers to the core but it got rejected with a reason to use Laravel instead. Just for Packages support i didn't want to use full-stack framework. There were few discussions about the same as well. Hence, This package to deal with this issue!

Quick Start

Install

Install Through Composer

You can either add the package directly by firing this command

$ composer require irazasyed/larasupport:~1.0

Or add in the require key of composer.json file manually

"irazasyed/larasupport": "~1.0"

And Run the Composer update command

$ composer update

Add Service Provider

Add this service provider to your bootstrap/app.php file.

$app->register(Irazasyed\Larasupport\Providers\ArtisanServiceProvider::class);

Artisan Service Provider is an optional provider required only if you want vendor:publish command working.

And you're done! You can now start installing any Laravel Package out there.

Available Methods

These helpers can be used across your Lumen project, not only with Laravel Packages.

Paths

public_path

Get the fully qualified path to the public directory. You can set env variable PUBLIC_PATH and it'll return the same instead of the default public.

config_path

Get the fully qualified path to the config directory (Mostly used with Laravel Packages).

database_path

Get the fully qualified path to the database directory (Mostly used with Laravel Packages).

Artisan

vendor:publish

Artisan command to Publish any publishable assets from vendor packages (Required to get Laravel Packages working!).

php artisan vendor:publish

OR

php artisan vendor:publish --provider="Vendor\Providers\PackageServiceProvider" 

Other

route_parameter

route_parameter($name, $default = null)

Get a given parameter from the route.

elixir

If you're using Laravel Elixir in Lumen, Then this helper function will come handy when you want to include assets from your build directory. By default, it assumes your Elixir's build directory is build under public directory (The default is as per the Elixir's default config). If you use a custom build directory, then you can simply set env variable ELIXIR_BUILD_PATH with your custom directory path and it'll use the same instead of the default.

<link rel="stylesheet" href="{{ elixir('css/all.css') }}">

<script src="{{ elixir('js/app.js') }}"></script>

Contributions

PRs are Welcome :)

Additional information

Any issues, please report here

Credits

License

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

FOSSA Status