Latest Updates

Documenting code, one commit at a time.

PHP 10 posts
×

Enhancing Subscription Recognition in Billing Systems

Introduction

This post addresses an issue where a billing system, specifically when using a service like Cashier, fails to correctly identify active subscriptions beyond the default type. We'll explore the problem and provide a solution to ensure all subscription types are properly recognized.

The Problem: Default Subscription Type Bias

In many billing systems, especially those utilizing

Read more

Automating Development Tasks with Custom Skills

In software development, repetitive tasks can consume valuable time and introduce inconsistencies. Automating these tasks not only boosts efficiency but also enhances code quality and maintainability. This post explores how custom skills can be leveraged to streamline project workflows, focusing on practical examples and benefits.

Custom Skills for Enhanced Productivity

Custom skills are

Read more
PHP Laravel MySQL

Fixing Type Errors in Subscription Models

When working with custom models that extend core framework functionalities, it's crucial to maintain type compatibility. A recent fix in our application addressed a TypeError that arose from an incorrect extension of the Subscription model.

The Problem: Type Hint Mismatch

The custom Subscription model was initially set up to extend Eloquent's Model directly.

Read more

Improving Database Transaction Handling in Tests

Introduction

During recent testing of the social login functionality in our application, we encountered intermittent failures. These "flaky" tests were traced back to how database transactions were being handled, particularly in PostgreSQL.

The Challenge

The core issue was that within a test, a failed database query (e.g., due to a validation error during profile synchronization) would

Read more

Seeding Initial Data for Tenant-Specific Features

Introduction

This post details the process of seeding initial data, specifically post examples, for tenant-specific features in our application. This approach allows for features like auto-generated posts or random content display that is tailored to each tenant.

The Need for Seed Data

When building multi-tenant applications, providing default or example data for each tenant can greatly

Read more