Latest Updates

Documenting code, one commit at a time.

PHP Filament

Adding Delete Actions to Filament Resources

The Reimpact/platform project involves building a comprehensive platform, and a recent update focused on enhancing the user experience when managing data through Filament resources. This post details the addition of delete actions to a MassiveUpload resource, streamlining data management directly from the resource table and view pages.

The Enhancement

The primary feature added is the ability

Read more

Enhancing Filament Resource Testing with Pest and Tenant Awareness

Introduction

The Reimpact/platform project is undergoing improvements to its testing infrastructure, specifically focusing on Filament resources. The goal is to ensure comprehensive test coverage for CRUD operations across various resources, while also addressing tenant-specific data handling.

The Challenge

Previously, testing Filament resources lacked sufficient coverage, especially

Read more

Sequential Processing: Avoiding Async Pitfalls in Platform Development

When building complex platforms like Reimpact's platform, managing asynchronous tasks is crucial for performance. However, it's easy to fall into the trap of dispatching jobs asynchronously when a synchronous approach is actually required for data integrity.

The Problem: Race Conditions During Excel Uploads

Imagine a scenario where you're processing an Excel file containing products,

Read more

Tenant Migrations: Ensuring Data Consistency in Multi-Tenant Applications

When building multi-tenant applications with Laravel, ensuring each tenant's database schema is correctly migrated can be a challenge. In the Reimpact platform, we encountered issues with tenant schemas either re-running all migrations on each deploy or skipping them entirely. This led to potential data inconsistencies and application instability.

The Problem

Without a dedicated migration

Read more
PHP Platform

Improving Report Filtering in Reimpact Platform

Introduction

Have you ever encountered a situation where a dropdown list displays irrelevant data, hindering user experience and efficiency? This post delves into a scenario within the Reimpact platform where a seemingly minor oversight in filtering generated reports led to precisely that issue, and how it was resolved.

The Problem: Unfiltered Reports

In the Reimpact platform, users rely

Read more

Ensuring Tenant Context for Filament Uploads in Laravel

Introduction

When building multi-tenant applications with Laravel and Filament, it's crucial to ensure that operations are performed within the correct tenant context. This post addresses a common issue encountered when using Filament's massive upload feature where the tenant context was not active during Livewire form submissions, leading to data integrity violations.

The Problem: Tenant

Read more
PHP Filament

Enhancing Filament-Based Applications: Ensuring Job Dispatch and Optimizing Resource Allocation

Introduction

Ensuring background jobs are correctly dispatched and optimizing resource allocation are critical for application stability and performance. This post explores recent enhancements to a Filament-based platform, focusing on ensuring consistent job dispatch across modules and improving worker allocation for resource-intensive tasks.

Ensuring Consistent Job Dispatch

Read more
PHP Filament

Filament v5 Action Updates in Reimpact Platform

The Reimpact platform has undergone an update to align with Filament v5, specifically addressing changes in how actions are handled within tables. This adjustment ensures compatibility and leverages the latest features offered by the framework.

The Transition from Tables\Actions\Action

In previous versions of Filament, actions within tables were managed using Tables\Actions\Action.

Read more

Streamlining Filament Forms with Namespace Updates and Tenant Context Resolution

Keeping dependencies up-to-date can be a headache, especially when upgrading major versions of frameworks. Let's look at how recent changes in the Reimpact platform addressed a namespace change in Filament v5 and improved tenant context resolution.

The Challenge: Filament v5 Namespace Update

Filament is a popular Rapid Application Development (RAD) framework for Laravel.

Read more

Enhancements to Tenant Warehouse Management in Platform

Introduction

The Reimpact platform is undergoing improvements to its multi-tenancy architecture, specifically focusing on tenant warehouse management. This involves refining database queries and updating tenant schemas for better isolation and data integrity.

The Problem

Previously, the GeneratedReportResource was incorrectly querying the company_id on tenant-specific warehouse

Read more