Latest Updates

Documenting code, one commit at a time.

Filament Resource Enhancements for Modular Laravel Applications

Building robust and scalable applications often involves modular design principles. In the Reimpact/platform project, we've been focusing on enhancing our Filament resource implementations to streamline development and improve maintainability across various modules.

Streamlining Module Development with Filament

Filament provides a powerful way to create admin panels for Laravel applications.

Read more

Scaling with Schemas: Multi-Tenancy Migration in Laravel

The Reimpact platform is undergoing a significant architectural shift, moving from a MySQL row-level multi-tenancy model to a more robust PostgreSQL schema-per-tenant setup. This post dives into the key considerations and steps involved in this migration, leveraging Laravel and Filament.

The Motivation for Schema-Based Tenancy

Row-level multi-tenancy in MySQL, while initially simpler to

Read more

Modernizing Platform Components with Laravel, Filament, and PostgreSQL

The platform project is undergoing a series of updates to enhance its architecture and developer experience.

Streamlining Panel Providers

Component registration is now more organized. The PackagingPanelProvider has been registered, ensuring that necessary components are readily available throughout the application. This centralizes the management of UI elements, improving maintainability.

Read more

Navigating the Data Migration Maze: MySQL to PostgreSQL

Migrating data between different database systems can be a complex undertaking. Recently, the team working on the platform navigated a significant data migration from MySQL to PostgreSQL. This post outlines some key considerations and challenges encountered during the process. These insights can help you avoid common pitfalls when undertaking similar migrations.

The Challenge

Read more
PHP MySQL AWS

Streamlining Local Development with Dynamic MySQL Configuration

Setting up a local development environment can often be a hurdle, especially when dealing with database credentials. Manually managing these credentials and ensuring they match the production environment can be time-consuming and error-prone. This is especially true for the Reimpact platform, where consistency between development and production environments is crucial.

The Problem: Hardcoded

Read more

Enhancing Tenant Schema Population in Laravel

Introduction

When building multi-tenant applications with Laravel, managing database schemas for each tenant can become complex. We recently improved our tenant schema population process in the platform project to handle various edge cases and ensure data integrity across companies.

The Problem

Our initial schema population process had several limitations:

  1. PostgreSQL's
Read more

Multi-Tenancy in Laravel with PostgreSQL Schemas: A Migration Story

Introduction

Row-level filtering is common for multi-tenancy, but what if you need stronger isolation? At Reimpact's platform, we're migrating towards PostgreSQL schemas to achieve true tenant separation, leveraging Laravel, Filament, and the middleware pattern.

This post details our approach to dynamically setting the PostgreSQL search_path for each tenant, ensuring data isolation and

Read more
PHP MySQL

Refactoring Generated Reports: Removing Redundant Data Calculations

When working on the Reimpact platform, a key aspect is ensuring data accuracy and efficiency. Recently, we addressed an issue within the generated reports functionality. The goal was to streamline data processing and eliminate redundant calculations, resulting in a more efficient system.

Identifying the Issue

The initial analysis revealed that certain data points within the generated reports

Read more