Latest Updates

Documenting code, one commit at a time.

Crafting a Scalable Newsletter System with Laravel and Filament

On the devlog-ist/landing project, we recently implemented a comprehensive weekly newsletter digest system designed to keep users engaged with fresh content. The goal was to build a robust, configurable, and secure system capable of handling subscriptions, content delivery, and user management efficiently.

The Challenge: Building a Robust Newsletter System

Developing a newsletter system

Read more

Building Collaborative Spaces: A Deep Dive into Secure Project Invitations

In our landing project, we've recently rolled out a new 'Community Projects' feature. This initiative empowers users to create collaborative development projects and invite other developers to join and contribute. The core challenge was to design a robust and secure invitation system that handles member roles, statuses, and automated lifecycle management.

The Challenge of Collaboration

Read more

Dynamic Pricing: Empowering Plan Management with Filament

The devlog-ist/landing project recently underwent a significant enhancement to its subscription and pricing infrastructure. Traditionally, managing different pricing tiers can become a bottleneck when hardcoded, leading to slow updates and lack of flexibility. Our goal was to create a robust, easily manageable system for defining and presenting various subscription plans.

The Challenge:

Read more

Streamlining Subscriptions: Integrating Paddle into Laravel with Filament

The devlog-ist/landing project, a foundational platform, recently underwent a significant upgrade to its billing infrastructure. Our goal was to introduce a robust and flexible subscription management system, moving beyond basic one-time payments to support recurring plans. This involved integrating Paddle as our primary payment gateway, alongside building a comprehensive administration

Read more

Solving Livewire Rendering Glitches with wire:key and PHP Styling in Breniapp

This post discusses how we addressed a rendering issue in the Breniapp project related to dynamically updating canvas aspect ratios. The problem stemmed from using Alpine.js to manage the aspect ratio of a canvas element within a Blade template that conditionally rendered based on Livewire state.

The Problem

Initially, Alpine.js was used to dynamically update the aspect ratio of a canvas

Read more

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 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

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