Latest Updates

Documenting code, one commit at a time.

Laravel and Vite: Fixing Manifest Issues After Upgrade

Introduction

After upgrading to Vite 6 in a Laravel project, you might encounter issues with the location of the manifest.json file. The laravel-vite-plugin version 0.8 expects the manifest in build/manifest.json, but Vite 6 outputs it to .vite/manifest.json. This discrepancy can break asset loading in your application.

The Problem: Manifest File Location

When upgrading to newer

Read more

Modernizing the UI and unifying chat styling in Breniapp

The Breniapp project has been undergoing UI modernization efforts, focusing on both the overall aesthetics and specific elements like the chat interface. This post will cover the key changes and their impact.

Design System Refinements

One of the primary goals was to refine the existing design system. This included subtle but impactful changes such as:

  • Softer card shadows: Providing a
Read more

Refining Filament Page Layout for Enhanced User Experience

Introduction

In the Breniapp/brenia project, we're continuously working to improve the user interface and overall user experience. One recent focus has been on optimizing the layout of Filament admin panel pages, particularly in scenarios where a more compact design is desired.

The Challenge: Vertical Space Optimization

Filament, a PHP-based admin panel, offers a flexible and

Read more

Enhancing the Portfolio Tour with AI Integration in Landing

Introduction

The landing project serves as a central hub for showcasing user portfolios and capabilities. A key aspect of this is guiding new users through the platform's features to ensure a smooth onboarding experience.

The Enhancement

Recent updates focused on enhancing the portfolio tour, specifically highlighting the platform's AI-powered post generation capabilities. This involves:

Read more
PHP JavaScript

Preserving Element Dimensions with Alpine.js Bindings

When working with dynamic styling in Alpine.js, it's crucial to understand how attribute bindings interact with existing styles. A common pitfall is unintentionally overwriting existing style attributes when only intending to modify a specific style property.

The Problem: Overwriting Styles

The issue arises when using the :style binding in Alpine.js. If the expression bound to :style

Read more
PHP Filament

Fixing Late Static Binding Issues in Filament Resources

When developing with Filament, you might encounter issues with PHP's late static binding, especially when working with resources. A recent update to the platform project addressed such a problem, improving the way queries are handled within resource classes.

The issue arose from directly calling Resource::getEloquentQuery(). This approach breaks PHP's late static binding, causing

Read more

Tenant Isolation Strategy: Global Rates in a Multi-Tenant Laravel Application

Introduction

In multi-tenant applications, data isolation is key. One common challenge is determining which data should be tenant-specific and which should be global. In our Laravel platform project, we faced this question with application rates. Initially, we considered rates to be tenant-scoped, but we discovered that, due to regulatory requirements, these rates are actually global and

Read more
PHP Filament

Filament v5: Addressing Class Not Found Errors with Layout Components

Introduction

When upgrading to new versions of frameworks, you sometimes encounter unexpected errors. This post addresses a "class not found" error in Filament v5 related to relocated layout components, and how to resolve it.

The Issue: Layout Components Relocation

In Filament v5, layout components like Section and Grid were moved from Filament\Forms\Components to

Read more