A search interface on a website displays results related to Laravel packages, including titles, dates, and tags for various articles.
I've updated the search on my blog to use the new major version of our spatie/laravel-site-search package (which can crawl a site and index all content)
I'll talk more about the package soon!
04.03.2026 10:48
π 4
π 1
π¬ 1
π 0
I still canβt give up iTerm
03.03.2026 11:27
π 1
π 0
π¬ 0
π 0
Introduction | laravel-query-builder
laravel-query-builder
π¦ Here's a link to our query builder package that @taylorotwell just mentioned at @LaraconEU
spatie.be/docs/larave...
02.03.2026 16:21
π 7
π 1
π¬ 0
π 0
If you use Laravel Valet and Safari feels slow on .test domains, the fix is simple.
Safari tries IPv6 first, times out, then falls back to IPv4. Just tell dnsmasq to also resolve .test to the IPv6 loopback address and restart it.
Hat tip to my colleague Ruben for this one.
27.02.2026 11:48
π 13
π 1
π¬ 0
π 0
Laravel 12.51: Stop Wasting Resources with Lazy firstOrCreate & MySQL Query Timeouts
YouTube video by Laravel
πΊ Here is What's New in Laravel 12.51
β‘οΈ Closures in firstOrCreate / createOrFirst
β‘οΈ Query timeout for MySQL
β‘οΈ whenFails / whenPasses on Validator
Thank you Guillermo, Vladelis & Gunther π
youtu.be/-0DkMlv1HlM
26.02.2026 18:33
π 4
π 1
π¬ 0
π 0
Donate to Support She Got Game: Celebrate Female Athletes, organized by Flavor Flav
Flavor Flav, the legendary rapper and Hollywood personality, has long been⦠Flavor Flav needs your support for Support She Got Game: Celebrate Female Athletes
Many of yβall asked how you can support and donate to our female athletes and the celebrations,,, so I created a Go Fund Me. Iβm hopeful this can have an impact beyond the weekend and help those that represent the best of the US
gofund.me/140322128
26.02.2026 18:39
π 4749
π 1424
π¬ 81
π 87
The Fate of Melania - A Randy Rainbow Song Parody
YouTube video by Randy Rainbow
The Fate of Melania (Randyβs Version) π§‘π»
26.02.2026 15:19
π 614
π 208
π¬ 40
π 46
π We just released laravel-og-image, a package that generates Open Graph images right inside your Laravel app.
Define your OG image as a Blade component, and the package screenshots it and serves it to crawlers. No external API, everything runs on your server.
26.02.2026 12:02
π 8
π 2
π¬ 1
π 0
A group of people at a happy hour with the Larabelles and Geocodio logos
Calling all cis women, trans women, and non-binary folks going to Laracon EU!
We're sponsoring a Larabelles happy hour on Monday and would love if you can join us.
RSVP β‘οΈ luma.com/61sdhh28
(Laravel world men: appreciate you helping raise awareness and sharing this π)
26.02.2026 10:00
π 11
π 8
π¬ 0
π 1
CVE-2026-27593 - GitHub Advisory Database
Statamic is vulnerable to account takeover via password reset link injection
PSA for @statamic.com folks - update your sites ASAP! β οΈ
A CRITICAL vuln was discovered that allows full account takeover via password resets! π±
All the details: cvereports.com/reports/CVE-...
25.02.2026 00:36
π 9
π 6
π¬ 0
π 0
Letz go even bigger and better,,, ALL Female US Olympians and Paralympian medalists are invited out to celebrate in Viva Las Vegas for the SHE GOT GAME Weekend ,,,
Hit a guy up and LETZ GOOO
25.02.2026 01:58
π 26762
π 4852
π¬ 728
π 695
Email to USA Hockey
Formal invitation to the hockey team sent,,, if any people with connections to the hockey team wanna have them email my team my bio. Iβm for real. ππΎππΎππΎ
23.02.2026 21:59
π 18925
π 3109
π¬ 543
π 554
Code snippet comparing native PHP reflection (5 lines) with a simplified approach using the spatie/php-attribute-reader package (1 line).
π We just released spatie/php-attribute-reader, a package that gives you a clean API for reading PHP attributes.
PHPs reflection API for attributes is surprisingly verbose. Our package fixes that. π
#php
23.02.2026 11:53
π 9
π 2
π¬ 1
π 0
A clean API for reading PHP attributes
PHP 8.0 introduced attributes, and they're a great way to add structured metadata to classes, methods, properties, constants, and parameters. The concept is solid, but the reflection API you need to actually read them is surprisingly verbose. What should be a simple one-liner ends up being multiple lines of boilerplate every time. And if you want to find all usages of an attribute across an entire class, you're looking at deeply nested loops.
We just released [spatie/php-attribute-reader](https://github.com/spatie/php-attribute-reader), a package that gives you a clean, static API for all of that. Let me walk you through what it can do.
<!--more-->
## Using attribute reader
Imagine you have a controller with a `Route` attribute and you want to get the attribute instance. With native PHP, that looks like this:
```php
$reflection = new ReflectionClass(MyController::class);
$attributes = $reflection->getAttributes(Route::class, ReflectionAttribute::IS_INSTANCEOF);
$route = null;
if (count($attributes) > 0) {
$route = $attributes[0]->newInstance();
}
```
Five lines, and you still need to handle the case where the attribute isn't there. With the package, it becomes:
```php
use Spatie\Attributes\Attributes;
$route = Attributes::get(MyController::class, Route::class);
```
One line. Returns `null` if the attribute isn't present, no exception handling needed.
It gets worse with native reflection when you want to read attributes from a method. Say you want the `Route` attribute from a controller's `index` method:
```php
$reflection = new ReflectionMethod(MyController::class, 'index');
$attributes = $reflection->getAttributes(Route::class, ReflectionAttribute::IS_INSTANCEOF);
$route = null;
if (count($attributes) > 0) {
$route = $attributes[0]->newInstance();
}
```
Same boilerplate, different reflection class. The package handles all targets with dedicated methods:
```php
Attributes::onMethod(MyController::class, 'index', Route::class);
Attributes::onProperty(User::class, 'email', Column::class);
Attributes::onConstant(Status::class, 'ACTIVE', Label::class);
Attributes::onParameter(MyController::class, 'show', 'id', FromRoute::class);
```
Where things really get gnarly with native reflection is when you want to find every occurrence of an attribute across an entire class. Think about a form class where multiple properties have a `Validate` attribute. With plain PHP, you'd need something like:
```php
$results = [];
$class = new ReflectionClass(MyForm::class);
foreach ($class->getProperties() as $property) {
foreach ($property->getAttributes(Validate::class, ReflectionAttribute::IS_INSTANCEOF) as $attr) {
$results[] = ['attribute' => $attr->newInstance(), 'target' => $property];
}
}
foreach ($class->getMethods() as $method) {
foreach ($method->getAttributes(Validate::class, ReflectionAttribute::IS_INSTANCEOF) as $attr) {
$results[] = ['attribute' => $attr->newInstance(), 'target' => $method];
}
foreach ($method->getParameters() as $parameter) {
foreach ($parameter->getAttributes(Validate::class, ReflectionAttribute::IS_INSTANCEOF) as $attr) {
$results[] = ['attribute' => $attr->newInstance(), 'target' => $parameter];
}
}
}
foreach ($class->getReflectionConstants() as $constant) {
foreach ($constant->getAttributes(Validate::class, ReflectionAttribute::IS_INSTANCEOF) as $attr) {
$results[] = ['attribute' => $attr->newInstance(), 'target' => $constant];
}
}
```
That's a lot of code for a pretty common operation. With the package, it collapses to:
```php
$results = Attributes::find(MyForm::class, Validate::class);
foreach ($results as $result) {
$result->attribute; // The instantiated attribute
$result->target; // The Reflection object
$result->name; // e.g. 'email', 'handle.request'
}
```
All attributes come back as instantiated objects, child classes are matched automatically via `IS_INSTANCEOF`, and missing targets return `null` instead of throwing.
## In closing
We're already using this package in several of our other packages, including [laravel-responsecache](https://github.com/spatie/laravel-responsecache), [laravel-event-sourcing](https://github.com/spatie/laravel-event-sourcing), and [laravel-markdown](https://github.com/spatie/laravel-markdown). It cleans up a lot of the attribute-reading boilerplate that had accumulated in those codebases.
You can find the full documentation [on our docs site](https://spatie.be/docs/php-attribute-reader/v1/introduction) and the source code [on GitHub](https://github.com/spatie/php-attribute-reader). This is one of the many packages we've created. If you want to support our open source work, consider picking up [one of our paid products](https://spatie.be/open-source/support-us).
π A clean API for reading PHP attributes
#php #package #spatie #PHP
23.02.2026 07:42
π 5
π 2
π¬ 0
π 0
π¦ Can you believe we'll ship yet another new package? It's coming later today, stay tuned π #php #laravel
19.02.2026 12:44
π 7
π 1
π¬ 0
π 0
I'm seeing more people use X's article feature to share content.
I really wouldn't do that. Sure, they'll probably give you more exposure in the short term, but in the long term you want to stay the owner of your own content.
Start your own blog if you want to share things π
19.02.2026 16:03
π 17
π 3
π¬ 1
π 0
Any political party spreading lies about voter fraud as a pretext to make it harder for every one to vote is sending a clear message: they can't win on their ideas alone.
Remember this.
18.02.2026 18:46
π 14193
π 4373
π¬ 324
π 169
A GitHub pull request shows the merge of Laravel 13 compatibility into the spatie_be package, detailing commits and comments.
π The first PR that adds Laravel 13 compatibility to a @spatie_be package has been merged! #laravel #php
19.02.2026 10:27
π 4
π 1
π¬ 1
π 0
What is New in Laravel 12.52 βοΈ
(AI Experiment)
17.02.2026 21:15
π 4
π 1
π¬ 0
π 0
Laravel AI SDK: I Built a D&D Terminal Game with AI as Dungeon Master
YouTube video by Laravel
What if your terminal was a dungeon?
I built a D&D escape game with the new Laravel AI SDK. The AI is the Dungeon Master. You are the artisan.
You will probably die.... βοΈ
www.youtube.com/watch?v=dYuF...
12.02.2026 20:20
π 2
π 1
π¬ 0
π 0
Need to get the teams here
12.02.2026 21:00
π 0
π 0
π¬ 0
π 0
Because someday I might review it and ding you for not having earlier returns LOL
09.02.2026 16:48
π 2
π 0
π¬ 1
π 0
That is a nightmare waiting to happen
06.02.2026 11:28
π 1
π 0
π¬ 0
π 0
πΆπΆ Laravel AI SDK just dropped
YouTube video by nunomaduro
Live right now, exploring taylorβs new Laravel AI SDK.. πΆ
Join me: www.youtube.com/live/nvhdOUi...
05.02.2026 17:53
π 4
π 1
π¬ 0
π 0
What's New in Laravel 12.49: hasSole(), Subquery Ranges & Searchable Tables
YouTube video by Laravel
New Laravel 12.49 video π¬
Lets discover new features like:
β‘οΈ hasSole() for collections
β‘οΈ whereBetweenColumns() with subqueries
β‘οΈ db:table searchable prompt
Lets go βοΈ
youtu.be/3iL51liqYiw
05.02.2026 20:09
π 4
π 1
π¬ 1
π 0
Laracon 2026
The flagship Laravel conference.
Laracon US 2026 tickets are live!
πBoston, MA
ποΈJuly 28β29, 2026
Join 1,000+ Web Artisans for two days of learning, shipping, and community.
Claim your ticket β laracon.us
02.02.2026 20:53
π 12
π 6
π¬ 1
π 0
Stop Letting AI Write Your Tests
YouTube video by Laravel
Coding with AI is easy now. Tests, implementation, all of it.
But let AI write your tests too? You lose control fast.
There's a better way β and it's not new.
youtu.be/sOcLzT3o3Is
30.01.2026 16:06
π 6
π 1
π¬ 0
π 1