John Braun's blog

Show waiting users what's happening in the background

Recently, I got inspired by this tweet by Miguel Piedrafita in which he stresses the importance of including some form of progress indicators whenever your application needs to perform one or more slow (background) tasks/processes. In his example, the users' website needs to be saved to a database,... read more

— Published: 07 Sep 2019

Handle incoming mail in Laravel


Sending e-mails with laravel couldn't be simpler using the Mail facade, but what if you want to act on incoming e-mails instead?

For example, if you want to build a helpdesk system, where users can respond to their tickets directly via e-mail. Or maybe you want to publish posts to... read more

— Published: 29 Jul 2019

WebSockets in Laravel

Getting started with WebSockets

Recently, Freek Van der Herten (from Spatie) and Marcel Pociot (from BeyondCode) have published a package called Laravel WebSockets which provides an alternative to services like Pusher.

In this post I want to explain... read more

— Published: 01 Jul 2019

Refactoring toward reusable Vue components

In this post, I want to highlight possible refactoring strategies toward resuable Vue components: renderless components vs using Provide/Inject. To illustrate these strategies, I'll use a Dragonball Z character selection component made using VueJS and Tailwind CSS. For this project I've used Laravel as a backend... read more

— Published: 28 Jun 2019