Documenting my journey of tackling challenges during my software development endeavors.

Gathering all my in-depth reflections on programming, solution architecture, and related topics, arranged in a chronological sequence.

Simplifying Actions in Laravel

For developers looking to keep their Laravel codebase clean, maintainable, and organized, Laravel...

Managing Profiles with Ease

When building modern applications, managing profile information like addresses, phone numbers,...

Testing Email In Laravel

Problem Statement You might come across to the situation where you need to test your email...

Setup Kong in Almalinux 9

Today I will share with you how you can setup Kong Gateway 3.5 with PostgreSQL 16, both in Almalinux...

Reset Sequence in Postgres

A simple command to update Sequence in your Postgres table: SELECT concat('SELECT setval(''',...

Setup Kong Gateway with Docker

In this blog post, I will show you, how you can install Kong Gateway in the Docker. ...

Creating a Build Script for Go

A bash script to generate build for all OS in Go. The Script Copy the following script...

Create Unit Test from Routes

You may previously skipped creating unit tests in your application, but you feels it's necessary for...

Laravel Scout: Create A Global Search

This is continuity form the previous post here. I was asked if it is possible, if we create a Global...

Livewire & ChartJs

Recent works require me to work with Livewire and ChartJs. Here how the expectation should...

Reusable Action Class

If you familiar with Jetstream, you will noticed app/Actions directory in your project. This post...

Livewire Datatable Action

If you are using Rappasoft Laravel Livewire Table version 2, then you might have the situation to add...

Livewire Confirm

Let's create a confirmation dialog using Livewire. The confirm dialog will display and do what ever...

Livewire Alert

Let's create a simple Livewire Alert component, to replace a normal conventional alert message....

Automate Linting Python Scripts

Create a Github Action to lint your Python scripts, simply copy & paste the following snippet and...

Improve Development Productivity

Usually, if you run into working with team, you might want to speed up a little on cloning the codes,...

Automate Update CHANGELOG.md

TLDR; Copy paste the following Github Action configuration: name: "Update...

Webhook - Part IV

So, we know how to create Webhook Provider application and Webhook Consumer application. So, what's...

Webhook - Part III

Now we have the basic understanding of webhook as in my Webhook: Part I and we also creating our own...

Webhook - Part II

Continue from previous post, let's build our first Webhook Provider. We going to build using...

Webhook - Part I

The Definition of Webhook A webhook in web development is a method of augmenting or...

Nested To HTML Entities

A quick one: <?php if(! function_exists('to_htmlentities')) { function...

Simple Deployment with Bash Script

Automate common commands used for deployment is very useful to simplify deployment process. One of my...

Log Request Body in Guzzle

Debugging when using Guzzle, is quiet easy by providing the debug key in the...

Dynamic Livewire Load Performance

In my previous post on Load Dynamically Livewire Components from Different Namespace, I've hit an...

PHP Code Style

Few ways you can simplify, how you should standardise your PHP code style, by following PSR-12. For...

Create A Running Number

You may come across, to have a running number, case id or reference number of your records, so that...