The mixin PHP DocBlock original

by Freek Van der Herten – 5 minute read

When using PHP, you've probably used DocBlocks. They can be used to add additional information that can't be inferred by looking at the source code alone. DocBlocks can be used by IDEs, like PhpStorm, to improve autocomplete suggestions.

In this blogpost, I'd like to highlight a not so well known DocBlock: mixin.

Read more

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.

A Micro-Manager’s Guide to Chilling Out

forge.medium.com

Don't try to manage your colleagues too much.

Employees want to be managed by people who empower them, not manage every bit of their day. The better you get at hitting the right balance between oversight and autonomy, the more likely you are to win long-term fans who will advocate for you as your career progresses.

Read more [forge.medium.com]

Making sense of API response times

www.codemonkey.io

Mathias Hansen shares how API response time data is used at Geocodio and how to work with this kind of data in MySQL.

The API is the backbone of our business, so over the years we have continously worked to improve and ensure consistent performance. We look at many parameters such as uptime and error rates, but one of the key metrics is API response time. This is how we use this data.

Read more [www.codemonkey.io]

Client Side PHP

atymic.dev

Atymic (real name unknown to me), a developer hailing from Sydnex, wrote a blogpost on how he managed to get PHP running in the browser via WebAssembly.

I'm sure you've come across plenty of sites that use javascript on the front end, but what about using PHP as a client side language? How, you ask? Since PHP is C based, it's actually possible to compile a version that's able to run inside your web browser using web assembly.

Read more [atymic.dev]

Testing your Laravel app using GitHub actions

ma.ttias.be

Mattias Geniar explains how you can use GitHub actions to run the testsuite of your Laravel app.

Last year we wrote a blogpost about our setup we use for Oh Dear! with Gitlab, and how we use their pipelines for running our CI tests. Since then, we've moved back to Github since they introduced their free private repositories. In this post I'll describe how we re-configured our CI environment using Github Actions.

Read more [ma.ttias.be]

A package that adds resource links to your Laravel API resources original

by Freek Van der Herten – 3 minute read

At Spatie we have several projects where the UI is rendered using JavaScript (we're big fans of Inertia). The backend and routes are defined in the Laravel app. The backend sends information to the frontend using API resources.

We often add the available routes the frontend can use as links property on the resource. To avoid having to add all routes manually, my colleague Ruben released a package, called laravel-resource-links that can automatically add resource links to the API resource.

In this post, I'd like to introduce the package to you.

Read more

Live-Updating Status Page With Livewire

calebporzio.com

Recently status pages were added to Oh Dear!. My colleague Sebastian took care of the live updates with a few lines of JavasScript.

In a new video on his blog Livewire creator Caleb Porzio, shows how can create the same behaviour with Livewire (and without having to write JavaScript). Impressive stuff!

This sort of thing is right up my alley, but I couldn't help but think how easy it would be in Livewire. Here's is the same functionality implemented with Livewire, in three or four little code additions. No JS!

Read more [calebporzio.com]

Track successful email deliveries, clicks and opens in your Laravel PHP application with Mailgun

ninjaparade.ca

Yaz Jallad explains how you use Mailgun's webhooks to determine click and open rates of mails.

While building ContestKit there was a feature I wanted to allow users to know if the emails that were sent to the winners were delivered successfully. Thankfully this feature is relatively easy to add because of Mailgun's amazing API. Let's create a new Laravel application and get started.

Read more [ninjaparade.ca]