Latest Updates

Documenting code, one commit at a time.

Mitigating XSS Vulnerabilities in Livewire/Alpine.js with @js()

The Problem

In the landing project, we encountered a subtle but significant security issue related to how data was being passed from PHP to JavaScript within our Blade templates. Specifically, when using Livewire and Alpine.js, values containing special characters (like apostrophes in names such as "O'Brien") could break the JavaScript context, leading to unexpected behavior or, worse,

Read more

Improving Feedback Form Accuracy in Landing Pages

Introduction

In web development, capturing accurate context is crucial for debugging and improving user experience. This post addresses an issue encountered in the devlog-ist/landing project where the feedback form was capturing an incorrect URL due to server-side rendering limitations with Livewire.

The Problem: Server-Side URL Capture

When using Livewire, attempting to capture the

Read more

Improving Theme Selection in Landing Pages

The landing project provides customizable landing pages. Recently, we addressed an issue with the theme selection process that was causing cross-origin errors on tenant subdomains.

The Problem

Previously, the theme selector used the route() function to generate URLs. This resulted in the main domain URL being generated, which caused cross-origin failures when the landing page was accessed

Read more
PHP Livewire

Maintaining Session Integrity During Impersonation in Livewire

Introduction

When implementing user impersonation functionality, a common pitfall is inadvertently breaking the user's session. This post addresses an issue in a Reimpact platform where session loss occurred during impersonation due to Livewire's single-page application (SPA) navigation.

The Problem: Session Regeneration and SPA Navigation

The Auth::login() function in PHP regenerates

Read more

Refactoring Module Selectors for Enhanced UX in Laravel Filament

When working with Laravel Filament on the Reimpact platform, small UI refinements can have a significant impact on user experience. Recently, we addressed an issue concerning the module selector's icon sizing and positioning, particularly its integration with the platform's logo.

The Problem

The original implementation relied on Tailwind CSS classes for styling the module selector icon.

Read more

Taming Blade Component Quirks with Blade UI Kit in Laravel

When working with Laravel projects like Reimpact/platform, you sometimes encounter unexpected behavior when integrating different packages. Recently, we ran into an issue where Filament's DisableBladeIconComponents middleware was preventing Heroicon components from resolving correctly in our module selector.

The Problem

Filament, a popular admin panel package for Laravel, includes a

Read more

Unifying Branding Across Filament Panels in Reimpact Platform

Introduction

Maintaining a consistent brand identity across multiple admin panels can be a challenge. In the Reimpact platform, we faced this issue with our eight Filament panels, each serving different modules. The goal was to ensure a unified look and feel while streamlining maintenance and updates.

The Problem

Previously, each Filament panel had its own branding configuration, leading

Read more

Prompting for Feedback: Balancing User Experience and Engagement

Collecting user feedback is crucial for iterative improvement in any application. However, the timing and method of prompting users for feedback can significantly impact their experience. In the Breniapp application, a new approach balances proactive engagement with user comfort.

The Feature: Just-in-Time Feedback Prompts

A Livewire component has been introduced to present users with a

Read more

Improving Application Stability and User Experience in Landing

The devlog-ist/landing project focuses on creating a smooth and reliable user experience. Recent work has addressed several critical production errors to enhance stability and prevent disruptions.

Addressing Production Errors

Production errors can significantly impact user satisfaction and overall application performance. A proactive approach to identifying and resolving these issues is

Read more