10+ Laravel Packages For Building Laravel Apps

17 April 2019
10+ Laravel Packages For Building Laravel Apps
10+ Laravel Packages For Building Laravel Apps

Here are 10+ packages for building Laravel Apps.

Why do I create this list? I’m a Lazy Developer, member of few Laravel Groups on Facebook and common question is what packages to use. I’m lazy I don’t want to build all thing from scratch

Why I don’t include admin packages? They will be covered in another post.

1. Modules

If You are building a bigger app than Hello Word. Start working with modules. Separating application function in modules is very recommended. Keep module entities, controllers, views, routes, configs etc in one place. What else? Later it’s easier to transfer modules between apps.

Advantages

  • Code encapsulation
  • Order in the code
  • Easier code transfer between apps
  • Code Generation — module, controllers, entities etc.

Where to get it? https://github.com/nWidart/laravel-modules

2. Spatie permissions

If You don’t know Spatie, You should start checking them immediately! Great company. Spatie Roles & Permission is one of there best permissions package.

Advantages

  • Roles
  • Permissions
  • Direct Permissions
  • Middleware
  • Multiple Blade Directives
  • Artisan commands

Where to get it? https://github.com/spatie/laravel-permission

3. Laravel Datatables

If You use DataTables and you are building yourself javascript, ajax, routes, database queries, filters, search etc. Trust me. there is an easier solution.

Advantages

  • Easy to use
  • DataTable Service
  • Creates database queries for You
  • Generates Javascript
  • Multiple customisations

Where to get it? https://github.com/yajra/laravel-datatables

4. Laravel 5 Form Builder

I really, really don’t like to mix forms with HTML. Laravel Form Builder gives You ability to separate from definition from HTML view.

Advantages

  • Easy to use
  • Forms as objects
  • Multiple form fields supported
  • Child forms
  • Easy to create a custom form fields

Where to get it? https://github.com/kristijanhusak/laravel-form-builder

5. Easy flash notifications

After saving data from the form I like to redirect the user to list page, edit view or show view. With this package, i can easily notify user about success, warning or error.

Advantages

  • Easy to use
  • Multiple flash options (Success, Error, Warning, Overlay, Modal etc)
  • View customisation

Where to get it? https://github.com/laracasts/flash

6. Laravel Menu package

If You application required to have easily changeable menu elements, base on roles and permissions this one is for You.

Advantages

  • Easy to use
  • Shared across views
  • View customisation
  • Can populate data from the database
  • Cachable

Where to get it? https://github.com/spatie/laravel-menu

7. Laravel Activity Log

Most of data administrators want to have all information about users activity. This package allows to easily track what and when Your users are creating, updating entities. Plus — this package keeps information about changes between entity versions — just wow.

Advantages

  • Easy to implement on Entity.
  • Keeps all info about create and update with times and users.
  • Can logs custom information (login, logout etc)

Where to get it? https://github.com/spatie/laravel-activitylog

8. Laravel Js Validation

I really like this one. Automatic front validation base on request object sound good right? It’s always better to write less code — lazy way.

Advantages

  • Generates Front-End validation base on request obejct.
  • No Javascript coding required
  • Ajax validation supported (Unique, Exists, Custom Validation Rules
  • Translations

Where to get it? https://github.com/proengsoft/laravel-jsvalidation

9. Persistent settings

If Your app has multiple settings options (theme, logo, company settings, API settings, defaults etc ). This package allows saving key => value in database. Later is super easy to use them via helpers.

Advantages

  • Cached
  • Can be Encrypted
  • Settings can have context (User for example)

Where to get it? https://github.com/edvinaskrucas/settings

10. Multi-tenant

If You are building SAAS application where every company has it’s own database, domain, subdomain and You later wan’t keep all that in one code repo. This package is for You.

Advantages

  • Multiple databases
  • Multiple domains and subdomains
  • Generates apache and nginx configuration files
  • Supports Queues
  • Supports separation of files storage

Where to get it? https://github.com/hyn/multi-tenant

Bonus

11. Laravel IDE Helper — Generates PHPDock comments for models, facades, Database Entity columns autocomplete for PHPStorm. Who would not want it?

https://github.com/barryvdh/laravel-ide-helper

12. Multiple Helpers for Arrays, Strings, Objects etc. (For example easily group array by value, )

https://github.com/letsdrink/ouzo-goodies

13. Auto transfer PHP Array to Javascript objects