Top 10 Super Useful Packages to Improve Laravel applications in 2019

Today I am going to provide the list of most downloaded packages on packagist those are super useful and highly essentials packages and ranking top 10 on packagist because they are so necessary to built scalable and performance oriented laravel application.

Laravel has lots of packages available out there because of Laravel’s huge developer community and open source contribution from great developer those are passionate to what they do and ultimately they provides great value to developers from the community as well as to the market.

Don’t forget to checkout new feature available in Laravel 6 – Laravel 6 Release New Features and Updates


Laravel IDE helper package is basically used improve auto complication capability for our code editor.

This package basically generates file which is helpful for code editor to understand the project and then accordingly code editors provide us IntelliSense for autocompletion.

The file I am talking about is basically generated based on the files we have in our laravel project and it keeps them up to date as well.

You can install this package using following command:

composer require --dev barryvdh/laravel-ide-helper

You can find more details about usage and instruction about laravel-ide-helper package on GitHub repository.

Repository –


This is actually one of the great and my personally favourite package it helps a lot while I work on big projects those have huge number of database transaction.

You can call this package as Laravel Application debugger itself because of it’s highly useful features.

As soon you install this package it will provide you a debug bar to the bottom of your browser if your application is in debug mode.

This debug bar provides great information like Error Message, Timeline, Exceptions, Views, Routes, SQL Queries, Mail, Auth, Request details and many more.

Amongst of all of the above features my favourite is Queries section the reason is it tells you how many queries are being executed for the current request and accordingly we can optimize the application.

You can install this because using command below and make sure the debug mode is on and of course do not use this package into production.

composer require barryvdh/laravel-debugbar --dev

Repository –


This package comes into handy when you want to deal with Excel or CSV files in your Laravel projects.

It provides great features when it comes to import or export Excel or CSV files from your project you can also directory export from the Eloquent models, Collections and more useful form the Blade views as well.

This package has well easy to understand and up to date documentation, you can install this package using following command:

composer require maatwebsite/excel

Repository –


This package comes into handy when you want to debug sometime in real time without going write a script and try to execute on browser to see result.

What mean is while working on Laravel application we always needs to debug or see the value from array, variable, collection or we many needs to checkout some records from the database and play around.

Tinker is extremely useful package and I am telling this from experience one my favourite part of using tinker is to dump data and load dummy into application using factories.

Tinker is laravel official package comes preinstalled with Laravel Framework so you don’t have do follow any extra to install to install it all you do is utilize it’s features.

Repository –


Are you looking the library to work and process images from your laravel package then intervention/image package is one for you it is open source and powerful package.

Comes with ability to Create, Edit and compose image out of the box, currently this package support two command image processing  libraries that GD Library and Imagick

You can install this package using following command:

composer require intervention/image

Repository –


If you are looking to manage user roles and permission in laravel project this package provides an ability to manage users roles and permission from a database.

You can install this package using command given below:

composer require spatie/laravel-permission

You should publish migrations after installation:

php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="migrations"

And then migrate the database

php artisan migrate

You can also publish the config file to adjust the configuration changes

php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="config"

Repository –


This package is a wrapper over DOMPDF library if you know DOMPDF offers us to convert HTML to PDF files.

So by suing this package you don’t have to directly deal with the DOMPDF you can simply use predefined class and function from this package and boom your good to generate pdf files from your projects.

Install this package via composer:

composer require barryvdh/laravel-dompdf

Repository –

I would like to clarify one thing before you proceed to the next package and it is clearly my personal opinion from the experience.

So event this Laravel DOMPDF package is dominating in Laravel community but I still did not like using DOMPDF into my project and I have a reason behind this, it is because it is slow and did not work that much when it comes to generate pdf from HTML which has thousands of rows and column with HTML database.

You might be thinking that if I am not using DOMPDF then what do I use to generate PDF in my laravel project then here is the answer I use wkhtmltopdf

I have written a dedicated tutorial on wkhtmltopdf and that was just because of problem I explain above. wkthmltopdf works absolutely fine and I am currently using in to the live applications without any issues customer loving performance.

Here is the tutorial – Advance way to export HTML to PDF – wkhtmltopdf


I am telling you this is my favorite 🙂 You know because this package is very useful when you use Angular, VueJs or React in your Laravel project.

This application provides and ability to handle CORS options in Laravel Requests and also to provides ability to add CORS to the headers to response from the requests.

Install this package via composer:

composer require barryvdh/laravel-cors

Generate the configuration file:

php artisan vendor:publish --provider="Barryvdh\Cors\ServiceProvider"

Repository –


This package provides us a beautiful way of collecting dump output data into the console from the laravel application.

So basically it works like a local server on your machine so whenever you start the dump server and start adding dump to test particular variable, array or anything from the project.

That dump data is going to show up into your HTTP or API responses into your browser it will start rendering on the terminal out of the box.

You can install the package via composer:

composer require --dev beyondcode/laravel-dump-server

And if you like you can generate the configuration file from the package

php artisan vendor:publish --provider=BeyondCode\\DumpServer\\DumpServerServiceProvider

Repository –


This is one the great package provide by officially Laravel itself this package is mostly useful while we work with RESTFul services.

As you know Laravel already has built in authentication support which is awesome but this passport package will help you when you want to authenticate user via API like for example from the mobile application or the Angular Application and so on.

So let’s say if you want to maintain access token for your users to authenticate then this package is great to do that.

Laravel Passport Package provides full OAuth2 server implementation.

You can install this package to your larvel project using composer:

composer require laravel/passport

I have fully dedicate tutorial on Laravel Passport package which I think is really useful if you want to work with RESTful services.

Read – Laravel 5.5 API User Authentication with Passport Package

Feel free to comment your questions or package name you mostly like to use as a Laravel developer.

Yogesh Koli

Software engineer & Blogger live in India, has 8+ years of experience working with the Front-end and Back-end Web Application Development.

Recent Posts

Complete guide of using Laravel 6 Eloquent Subquery Enhancements

Learn How to use laravel frameworks new improved feature called Eloquent Subquery and get example…

3 years ago

3 Useful examples of using Array Map function in PHP – Best Practices

Learn how to use php array map function with easy and essential tutorial to modify…

3 years ago

Working with PHP Array Filter Function – Best Practices

Learn how to use php array filter function with easy and essential tutorial to filter…

3 years ago

How to add Access Modifiers with Constructor Parameters in TypeScript

Want to know how to refactor your Typescript class, Learn here utilising Typescript of the…

3 years ago

What is Access Modifiers and how to use Access Modifiers in TypeScript ?

What is Access Modifiers in typescript, how to use Access Modifiers, when to use them,…

3 years ago

How to secure pdf files In Laravel and allow access to authenticated users

This tutorial provides a perfect solution on how to protect and secure pdf file in…

3 years ago