• Makers Make by SaaSykit
  • Posts
  • Laravel Boost v2.0 with Skills, Livewire 4 Support in Laravel VS Code Extension, Don’t solve problems that don’t exist, PMF is a lagging indicator & more

Laravel Boost v2.0 with Skills, Livewire 4 Support in Laravel VS Code Extension, Don’t solve problems that don’t exist, PMF is a lagging indicator & more

Hey Makers 👋🚀

January has passed — motivation alone isn’t carrying anyone anymore. New year resolutions faded into the background. This is the phase where builders either turn plans into progress… or lose momentum entirely. Don’t be the later.

Laravel keeps moving fast, and so do the people shipping on top of it. In this issue, we’ll look at what’s new, what’s useful, and what actually helps you build faster without adding complexity.

aaaand, if your goal this year is simple — ship more, stress less, and stop rebuilding the same foundations — you’re exactly where you should be. SaaSykit exists for that reason.

Get a SaaSykit license and start building your dream SaaS now!

Let’s get into what’s happening in the Laravel & SaaS world 👇

Laravel 12.48 & .49 Highlights

  • Query builder aliases for raw expressions
    You can now assign aliases to raw SQL expressions directly in the query builder, improving readability when working with calculated columns.

User::query()->select([
    'credits_left' => DB::raw('total_credits - used_credits'),
])->get();
  • New BatchFinished event
    A new lifecycle event fires when a batch completes successfully (without failures), giving you a clean hook for post-processing logic.

Event::listen(BatchFinished::class, function ($event) {
    logger()->info("Batch {$event->batch->id} finished successfully");
});
  • Custom JSON decoding flags for HTTP responses
    The HTTP client now allows passing JSON decode flags when reading responses, offering better control over parsing behavior.

$payload = Http::get($url)->json(
    flags: JSON_BIGINT_AS_STRING | JSON_THROW_ON_ERROR
);
  • Conditional CORS handling with skipWhen()
    The CORS middleware can now be skipped dynamically based on request conditions.

HandleCors::skipWhen(fn ($request) =>
    $request->is('health/*') || $request->hasHeader('X-Internal')
);
  • Queue event context improvements
    Queue-related events now expose more useful data for logging and monitoring.

Event::listen(JobPopping::class, fn ($event) =>
    logger()->debug("Job pulled from {$event->queue}")
);

Event::listen(JobReleasedAfterException::class, fn ($event) =>
    logger()->info("Job released with {$event->backoff}s backoff")
);
  • Subquery comparisons between columns
    You can now compare a subquery result against two column values dynamically.

$builder->whereBetweenColumns(
    $scoreSubquery,
    ['min_score', 'max_score']
);

From the Community

Laravel Boost v2.0 is now out and introduces a new Skills system that enables developers to extend and customize their development workflow. This major release also includes a revamped installation experience, package discovery improvements, and Inertia Vue skill syntax support.

Ah, PHP. For years, it was the go-to language for web development, powering everything from tiny blog sites to giant platforms like Facebook (at least in its early days). But despite all its growth, PHP always had a somewhat conservative approach to asynchronous programming – until now. With the arrival of PHP Fibers in PHP 8.1 (and a much-needed tune-up in PHP 8.4), it seems PHP is finally embracing the joys of concurrency.

When I set out to rebuild my personal website in early 2024, I wanted something with a layer of interaction. Clicking through links to learn about someone feels tedious. What if there was a bit of friction that made it more engaging?

The idea was to make the site feel like a terminal. Type about and you get a bio. Type help and you see what's available. It might be counterproductive for some visitors, but if someone is curious enough to look me up, hopefully it makes the experience a bit fun rather than just another portfolio to skim through.

I released Laravel Herd Worktree, a new Claude Code skill that automates the setup of git worktrees for Laravel projects served by Laravel Herd, eliminating the repetitive friction of working on multiple feature branches simultaneously.

Markdown has become a widely adopted standard for formatting text on the web due to its simplicity and readability. It allows users to write using an easy-to-read, easy-to-write plain text format, which is then converted to structurally valid HTML.

Laravel VS Code Extension v1.4.3 introduces support for Livewire 4, a new configuration option for artisan make commands, a fix for the Pint formatter, and improved handling of namespaced Blade components.

Laravel's Gates and Policies are essential for authorizing user actions. But what if you need to temporarily restrict a specific user—say, blocking someone from sending messages for a week after exceeding spam thresholds? Laravel Prohibitions, created by Kyrch, stores time-limited restrictions in the database, letting you apply and lift them dynamically without code changes.

All about SaaS

We procrastinate.

Not because we’re lazy or undisciplined, but because the next step is unclear, and our brains avoid discomfort.

When that happens, we don’t just stall. We drift. We default to whatever is easiest to do or feel. Doomscrolling. Outrage. Obsessing over others’ milestones, followers, & salaries. Motion that looks like progress, but isn’t.

For years, founders had a clear target to aim for. Triple-triple-double-double was ambitious, sure, but it gave you something concrete to build toward. If you could pull off that kind of growth, you were well positioned for a great fundraise.

The benchmarks weren’t easy, but they were at least clear. In the pre-AI era, SaaS companies would often demonstrate consistent and comparable growth patterns. Some might argue that investors were over-reliant on ARR as the singular indicator of a startup’s health, but it was at least a shared language across investors, startups, and sectors.

Founders are obsessed with Product-Market Fit, understandably so. They track signups, watch churn numbers and check the reviews. And yeah, all that matters. Solving a problem is the way to enter a market and Product-Market Fit tells you people want what you're selling.

A few days ago, I wrote about how AI is making software become fast food. Code is becoming cheap, judgment is becoming the bottleneck, and value is shifting away from writing toward deciding, integrating, and operating. The reactions were interesting as many people seemed to recognize the shift without yet having a clear model for it.

Usage-based billing is “fair” in theory. You pay for what you use. In practice, especially for UI-first products, it creates background anxiety.

Every click feels like it might cost money, so you explore less, and subconsciously pause before taking each action. You feel out of control of your end of month bill.

Continue the article 

Vertical SaaS is losing the thing that made it vertical.

That is hard to say as someone who believes deeply in the category. But it is getting harder to ignore.

Much of what is now labeled “vertical software” is built from the same underlying components, with differentiation pushed almost entirely into marketing and onboarding.

Continue the article


Videos

Keep building, keep rocking! 🤘

Psst, are you building a SaaS?

SaaSykit is a multi-tenancy Laravel-based boilerplate with everything you need to build an awesome SaaS.