- Makers Make by SaaSykit
- Posts
- Laravel 11.5-8 Released, What do Tariffs Mean for Startupland, Turning $5M Into $100M & more
Laravel 11.5-8 Released, What do Tariffs Mean for Startupland, Turning $5M Into $100M & more
Hey Makers,
Hope you’ve had a great couple of weeks!
Laravel has been on fire lately - dropping four main releases in just two weeks. 🚀
These updates are packed with useful features that can level up your projects.
In this issue, I’ve rounded up the highlights and included handy code snippets to help you hit the ground running. 👇
Automatic Eager Loading (auto fix for N+1 problem)
A new method, withRelationshipAutoloading(), has been added to models and Eloquent collections. When called, it automatically loads relations whenever they are accessed, without the need for explicit load() or with() calls.
$orders = Order::all()->withRelationshipAutoloading();
foreach ($orders as $order) {
echo $order->client->owner->company->name;
}
Also, you can activate eager loading for all models using the following call (In application provider)
public function boot() {
Model::AutomaticallyEagerLoadRelationships();
}
Rule::anyOf()
This addition allows a field to be validated against multiple predefined rule sets, ensuring that at least one set fully passes. This feature is particularly useful for validating tagged unions, discriminator-based validation (as seen in OpenAPI specs), or alternative input structures in FormRequest validation.
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
class StoreWorkflowServices extends FormRequest
{
/**
* Get the validation rules that apply to the request.
*
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
*/
public function rules(): array
{
return [
'params' => [
'required',
Rule::anyOf([
[
'p1' => ['required', Rule::in([ArrayKeysBacked::key_1])],
'p2' => ['required'],
'p3' => ['required', 'url:http,https'],
'p4' => ['sometimes', 'required'],
],
[
'p1' => ['required', Rule::in([ArrayKeysBacked::key_2])],
'p2' => ['required', 'email:rfc'],
]
])
]
];
}
}
Making Seed command prohibit-able
This allow for making the seed command prohibitable to avoid issues on production.
DB::prohibitDestructiveCommands();
// then
SeedCommand::prohibit();
AsHtmlString()
Sometimes it can be useful to store user-provided HTML in the database, for example for snippets or templates. AsHtmlString
is Illuminate-provided, this is the missing Eloquent cast to automatically cast an attribute to anHtmlString
.
protected function casts(): array
{
return [
'html' => AsHtmlString::class,
];
}
From SaaSykit

Zero downtime deployment is a software development practice aimed at ensuring continuous availability and seamless user experience during the deployment process. In zero downtime deployment, updates, patches, or new features are rolled out to the production environment without causing any interruption in service.
From the Community
Laravel introduces a more elegant approach to URL generation with query parameters through its new query() method. This dedicated API simplifies the creation of complex URLs with query strings, reducing repetitive code and potential errors.
Enhance your Eloquent query handling with Laravel's new afterQuery() hook, which provides a streamlined approach to manipulating collections after database retrieval while keeping your codebase cleaner and more maintainable.
As of v12.4, you can automatically cast Eloquent attributes to an HTML string using the AsHtmlString
cast. The framework already has an HtmlString
class available; this cast stitches it together with Eloquent attributes that you can use where appropriate
Laravel's withAttributes
method enhances relationship integrity by automatically applying constraint attributes when creating models through relationship methods.
The basic implementation ensures attribute consistency
One of the core concepts of Domain Driven Design (DDD from now on) is the Ubiquitous Language. We understand what the function or class is doing based on the naming, and even the business domain users should be able to follow along.
Many times we read a lot of great examples on how to implement a lot of different things.
Temporary URLs for file access is an essential piece of the security puzzle, which up until recently were only available out-of-the-box for the S3 driver. Now you can easily generate them for local files too!
All about SaaS
The new tariffs have markets down broadly. What do they mean for startups?1
In terms of first order effects, tariffs can impact a startup in two ways : the input costs and consumers’ demand.
Most software companies don’t import or source critical components of the software from abroad so the COGS / gross margin structure of the company shouldn’t change unless they rely on significant hardware purchases, for example GPUs or robotics components.
Revenue growth, however, is a different story.
For many startups, the secret to finding product-market fit lies in the pivot. Here’s how these founders knew it was time to change directions.
Slack was originally a gaming app. Twitter started out as a podcast platform. Brex first pitched Y Combinator a VR headset.
These pivots, now, almost feel like startup campfire stories — we see the results, but what’s often obscured in the successes are the specific, painstaking moves founders made to find product-market fit.
In 2015, Collaborative Fund made an unusually bold bet—investing $5 million—20% of a $25 million fund—into a single startup. Less than five years later, that one investment returned over $100 million, singlehandedly quadrupling the entire fund.
Was this risk justified? Should a fund spread $25 million across twenty-five $1 million bets or five $5 million ones?
“Never compete on price.”
So we are told. But customers want low prices, and it worked for Costco, Southwest Airlines, Vanguard, IKEA, Amazon, Walmart, McDonald’s, H&M, Dollar General, TJ Maxx, and many others. So why are we told not to use a low-prices to win?
I wrote this piece back in early 2023, when the term “vibe-cession” felt more accurate than anything the Federal Reserve was giving us. Today? It’s harder to put a name on what’s happening. Choppy markets. Trade headwinds. Tariff drama. Some sectors are struggling while others still seem to be doing fine. Is this a downturn? A reshuffling? Just a noisy, fleeting chapter?
Videos
Keep building, keep rocking! 🤘