Top 10 Laravel Helper for Backend Development

These are Laravel dependencies that I used in most of my projects.

Auriga Aristo
Indonesian Developer
4 min readFeb 28, 2024

--

Photo by Kira auf der Heide on Unsplash

When you start to create a project for backend development, you may need to choose which language or frameworks to use. When we choose a framework, sometimes Laravel becomes the solution. It has many supported dependencies and a vast community, and the main framework can do many features.

I have used Laravel for my projects since 2019. There are so many dependencies that I have used and tried. Some are good to use, some are bad, and the creators abandon some, so you can’t use them anymore. Here is the list of dependencies I recommend using inside your projects.

1. spatie/laravel-permission

Creating your roles and permissions from zero will take too long. It is better to use these packages rather than create on your own.

This package allows you to manage user permissions and roles in a database. Users have roles; roles have permissions, so the app will always check for the permissions. It is best only to assign roles to Users to “group” people by “sets of permissions.” But, on some special occasions, users can have direct permission, but I don’t recommend it; it is better to use roles instead.

2. spatie/laravel-data

Sending multiple variables with mixed data types can be the most confusing when sending it through numerous functions. Using Data Transfer Object (DTO) will help ensure that data passed within to other parts become more consistent and structured.

When using data objects, the class automatically transforms data objects into resources, creates objects from request data, validates them, and much more.

3. cviebrock/eloquent-sluggable

When a project has articles or posts, it becomes unfriendly if the web address uses an ID or randomly generated name. This package allows you to create a slug and make your URL more user-friendly, especially if you use SEO.

4. intervention/image

When discussing handling an image, this package helps you manipulate and edit images to become more manageable — starting with resizing, caching, filtering, and saving images. This package has many more features when talking about images. What you want, you will get it.

5. elegantweb/sanitizer

When inputting data into the database, we sometimes need to manipulate the data. But, some needings put a different data in it. If we create the function and call the function multiple times, your code becomes more friendly and easier to read. This package helps you to manipulate data before you have to use it. They have filters that are already available and ready to use. Using some little configurations, you can implement this package inside your requests.

6. barryvdh/laravel-ide-helper

This package generates helper files that enable your IDE to provide accurate autocompletion. Generation is done based on the files in your project, so they are always up-to-date. If you use PHPStorm, you might find many warnings when the function isn’t available, even if you believe that the function should exist. Using this package will hide your warnings, and your code will know which functions should exist.

7. sentry/sentry-laravel

Sentry is a software monitoring tool that helps developers identify and fix code-related issues. From error tracking to performance monitoring, Sentry provides code-level observability, making it easy to diagnose problems and learn about your application’s code health.

Sentry is free except for multiple team members who need to access the monitoring platform.

These last 3 of the list might not be a dependency, but they might be helpful when developing using Laravel.

8.ChatGPT

Talking about Laravel is about something other than PHP. But it also needs HTML, CSS, and JS for front-end projects. Honestly, I hardly understand complex Javascript, just simple JS and JQuery. However, the projects sometimes need JS to make animations on the page. It’s about more than Javascript, but you hardly understand when you have an error or something. ChatGPT can help you to generate and explain the code.

9.Material Dashboard Pro

Material Dashboard is a project I can find created using Laravel with many plugins installed with many components. It will help you design your web page, especially the admin page, faster. This library might be pricy, but I recommend creating an admin page more quickly.

Material Dashboard Pro by Creative Tim

10.Spotify

This is not about coding but more likely as a helper. In the meantime, developers will need to focus on developing their projects. When we use headphones and play music, we can ignore the annoying surrounding environment and make our work more efficient.

Those are helpers that you might need in the future. Happy coding…

--

--

Auriga Aristo
Indonesian Developer

4+ years in Backend Developer | PHP, Java/Kotlin, MySQL, Golang | New story every week