The Laravel package ecosystem
Packages play a big role in the Laravel scene. How big and which packages? Medium user Džuris took the data from the Packagist.org API and filtered out the Laravel packages.
Read more [medium.com]
Posts tagged with laravel
Packages play a big role in the Laravel scene. How big and which packages? Medium user Džuris took the data from the Packagist.org API and filtered out the Laravel packages.
Read more [medium.com]
Laravel's native scheduler allows you to schedule Artisan commands to run every minute. For a project I'm working on I needed to schedule a command to run every few seconds. I found a good solution to do this using an ReactPHP powered event loop. Because this solution could be helpful for others as well, I decided to package it up.
Using the laravel-short-schedule package, you can schedule artisan commands to run every second or even lower frequencies. In this blogpost I'd like to introduce the package.
Join 9,500+ smart developers
Get my monthly newsletter with what I learn from running Spatie, building Oh Dear, and maintaining 300+ open source packages. Practical takes on Laravel, PHP, and AI that you can actually use.
No spam. Unsubscribe anytime. You can also follow me on X.
"Freek’s newsletter is one of the best ways to stay updated with the Laravel and PHP ecosystem. It consistently highlights useful packages, tools, and ideas from the community, especially the amazing work coming from Spatie. As a Laravel developer building SaaS and web platforms, I find it extremely helpful to discover practical tools and insights that improve my development workflow."
Steve King wrote a nice introduction on how to use our event sourcing package together with Livewire. Cool stuff!
Read more [www.juststeveking.uk]
Together with my colleagues at Spatie, we have produced over 200 packages with more than 75 million downloads in total.
We learned a lot by quality packages like laravel-permission, laravel-backup, browsershot, laravel-medialibrary, and many more. We feel we have a pretty good workflow to produce reliable, readable, and maintainable packages.
We want to share the knowledge we have built up over the year with you in our new premium video course, titled Laravel Package Training.
I work at and co-own a company named Spatie, which specializes in creating large Laravel applications for our clients. Our team is rather small: we consist of only 10 people. At first glance we are a software development company like there are so many others. But there’s one thing that sets our company apart: we have an open source first policy. We try to create and contribute to open source as much as possible.
Currently we have around 200 open source repositories on GitHub. Our packages have been downloaded nearly 75 million times. They are being downloaded 4,5 million times each month. Probably we will hit 100 million downloads by the end of this year.
We've also just released our premium video course, titled Laravel Package Training. In this course, we use our experience to teach you how to build reliable and maintainable packages.
This all did not happen overnight. Read on to learn the story behind our open source efforts.
Jason McCreary makes the case for using traits over reaching for inheritance.
Read more [jasonmccreary.me]
– aaronfrancis.com - submitted by Aaron Francis
A Laravel package to mimic daemons via scheduled commands without having to change server configuration.
Read more [aaronfrancis.com]
Today we released a package to make Laravel apps tenant aware, called laravel-multitenancy. The philosophy of this package is that it should only provide the bare essentials to enable multitenancy.
The package can determine which tenant should be the current tenant for the request. It also allows you to define what should happen when switching the current tenant to another one.
It works for multitenancy projects that need to use one or multiple databases.
In this blog post, I'd like to introduce the package to you.
– blog.rafter.app - submitted by Josh Larson
Learn how to track and visualize a chain of queued jobs in Laravel using a custom trait, job middleware, and Laravel Livewire.
Read more [blog.rafter.app]
In this video, Mohammed Said shares a nice, clean strategy for multitenancy in Laravel.
On this page on Vimeo you'll find videos of all talks given at Laracon Online that was held in February.
Read more [vimeo.com]
At Spatie we have a TV screen against the wall that displays a dashboard. This dashboard displays the tasks our team should be working on, important events in the near future, which tasks each of our team members should be working on, what music they are listening to, and so on. Here's what it looks like:

This dashboard is built using our laravel-dashboard package. It will allow you to built a similar dashboard in no time.
In this blogpost I'd like to walk you through both the dashboard and the package.
In this short video I demonstrate how you can display multiple Twitter feeds using laravel-dashboard. I will release the packages as soon as we hit 50 sponsors on GitHub.
In this unrehearsed streaming session I show off how you can use the upcoming laravel-dashboard package to quickly build a beautiful dashboard that shows a realtime Twitter wall, a calendar tile that is fed by events coming from a Google Calendar, and a tile that displays the weather.
– timacdonald.me - submitted by Tim Mac
String concatenation is the current way we can pass arguments to Laravel middleware - but what if there was another way
Read more [timacdonald.me]
In this stream (which is the first I've ever done) I'll show you what you can do with our upcoming laravel-backup-server package and how it works under the hood.
🔥 Applications often have the most lines of code within controller actions.
— Jason McCreary (@gonedark) April 13, 2020
One practice to streamline your code is directly assigning view variables.
This also limits the use of temporarily variables and promotes abstractions which make the code more readable. pic.twitter.com/m0JGsybQ9k
🧙♂️ One of my favorite Laravel 7 features is query time casting. This is super handy when using a subquery to get extra "non-model" data, such as a date. By default it would be a string. This feature lets you cast it to a Carbon instance "on the fly". 👌https://t.co/Kd94iMsomA pic.twitter.com/VIzowGy3um
— Jonathan Reinink (@reinink) April 15, 2020
Read more [twitter.com]