<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/vendor/feed/atom.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US">
                        <id>https://laravel.io/forum/feed</id>
                                <link href="https://laravel.io/forum/feed" rel="self"></link>
                                <title><![CDATA[Laravel.io Forum RSS Feed]]></title>
                    
                                <subtitle>The RSS feed for the Laravel.io forum contains a list of all threads posted by community members.</subtitle>
                                                    <updated>2026-06-19T10:47:28+00:00</updated>
                        <entry>
            <title><![CDATA[What do you use to compare different versions of text?]]></title>
            <link rel="alternate" href="https://laravel.io/forum/what-do-you-use-to-compare-different-versions-of-text" />
            <id>https://laravel.io/30835</id>
            <author>
                <name><![CDATA[Hardik Barvaliya]]></name>
            </author>
            <summary type="html">
                <![CDATA[I often need to compare different versions of documentation, website content, configuration snippets, and notes. Git works great for source code, but for plain text I sometimes find it more convenient to use a dedicated comparison tool.

I'm interested in learning what other developers use for this workflow. Do you rely on editor features, standalone applications, or browser-based tools?

Recently I came across a tool called [Text Differ](https://text-differ.com/) that focuses on comparing two blocks of text and highlighting the changes. It made me wonder what approaches others prefer and which features are most important when reviewing text revisions.

What does your workflow look like?]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[How do you track who really triggered model changes?]]></title>
            <link rel="alternate" href="https://laravel.io/forum/how-do-you-track-who-really-triggered-model-changes" />
            <id>https://laravel.io/30834</id>
            <author>
                <name><![CDATA[Roma]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone,
I’ve been running into an issue in queue-heavy Laravel apps where the real origin of a change gets lost.
Typical flow:
HTTP request → service → queue → job → model update
By the time the model is updated, the audit log usually only shows the job or system as the actor, not the user who originally triggered the action.
So instead of:
“User Roman changed the order”
you often end up with:
“System updated order”
This makes debugging incidents really hard, because you lose the execution context across the queue boundary.
I’m curious how others handle this problem, do you track origin somehow, or just rely on basic audit logs?]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Pterocos - Browser-based PHP editor for Laravel prototyping]]></title>
            <link rel="alternate" href="https://laravel.io/forum/pterocos-browser-based-php-editor-for-laravel-prototyping" />
            <id>https://laravel.io/30833</id>
            <author>
                <name><![CDATA[Amine. KHD]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hey Laravel community!

I built Pterocos (https://pterocos.eu.org) - a free online editor that runs PHP code entirely in your browser. No installation, no account required.

**Why Laravel developers might find this useful:**
- Quickly test PHP snippets without local setup
- Prototype Laravel logic (collections, queries) instantly
- Share runnable examples with teammates or learners

**What Pterocos supports:**
- PHP 🐘
- Also: C#, Rust, Python, Ruby, SQL (SQLite/DuckDB), Lua

The editor runs entirely client-side - your code never leaves your browser.

**Try it:** https://pterocos.eu.org

Would love feedback from the Laravel community!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[ERP Software Development Company | Enterprise Resource Plann]]></title>
            <link rel="alternate" href="https://laravel.io/forum/erp-software-development-company-enterprise-resource-plann" />
            <id>https://laravel.io/30832</id>
            <author>
                <name><![CDATA[jafijanet]]></name>
            </author>
            <summary type="html">
                <![CDATA[As a trusted [](https://www.nxdeep.com/erp-software-development), NxDeep Connectz creates strong and scalable ERP solutions designed for specific business needs. Our ERP systems bring together essential business processes, remove data silos, and improve operational efficiency through centralized management and real-time analytics. We assist organizations with custom ERP development, implementation, integration, and ongoing support. Our goal is to help businesses use resources more effectively, streamline workflows, and boost growth with secure and future-ready ERP software solutions.
![]()]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Is it correct to use ASSET_URL or forceRootUrl() when behind]]></title>
            <link rel="alternate" href="https://laravel.io/forum/is-it-correct-to-use-asset-url-or-forcerooturl-when-behind" />
            <id>https://laravel.io/30829</id>
            <author>
                <name><![CDATA[Tarcísio Santos]]></name>
            </author>
            <summary type="html">
                <![CDATA[I'm using Laravel 13 and accessing my app via ngrok. I noticed that changing APP_URL in my .env file doesn't affect asset() it still generates localhost URLs. After digging in, I found two ways to fix it:

1. Set ASSET_URL to the ngrok URL
2. Add URL::forceRootUrl(config('app.url')) in AppServiceProvider::boot()

Both work, but the docs say ASSET_URL is intended for CDN deployments where assets are on a separate domain. And forceRootUrl() feels heavy since it overrides all URL generation.
My question is: what's the correct approach for a scenario like this (ngrok, or even a real hosting behind a proxy)? Should I always set ASSET_URL alongside APP_URL in these environments, or is forceRootUrl() the intended way to make APP_URL control all generated URLs?]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Advice/tips on a React application with Laravel backend]]></title>
            <link rel="alternate" href="https://laravel.io/forum/advicetips-on-a-react-application-with-laravel-backend" />
            <id>https://laravel.io/30828</id>
            <author>
                <name><![CDATA[Ginus van der Zee]]></name>
            </author>
            <summary type="html">
                <![CDATA[I'm currently working on a personal project related to Warhammer. Because I needed to test some things, I have made an test project for a quiz that would help select a faction. But I'm kind of still looking for advise to improve it. 

At first I had all the faction calculations run on the backend, but I've since moved that to the frontend. I was thinking of expanding the database and have tables with Warhammer units be tied the faction and have the website showcase them.


Github link: https://github.com/GinusHR/ple-content-quiz-test]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Built a binary approval workflow engine for Laravel]]></title>
            <link rel="alternate" href="https://laravel.io/forum/built-a-binary-approval-workflow-engine-for-laravel" />
            <id>https://laravel.io/30826</id>
            <author>
                <name><![CDATA[mema]]></name>
            </author>
            <summary type="html">
                <![CDATA[I’ve been working on internal approval/workflow systems for years and recently tried extracting the core engine into a reusable Laravel package.

Repository:
[Approval Binary GitHub Repository](https://github.com/menma977/Approval-Binary)

The package started as a simple approval system idea but eventually evolved into something closer to a workflow orchestration engine.

Main concepts currently implemented:

sequential & parallel approval
AND / OR contributor logic
dynamic approver resolution
condition-based routing
runtime event snapshots
rollback / force state handling
bigint bitmask approval state

The binary/bitmask idea was inspired by Linux permission concepts to represent partial approval states without relying only on status columns or linear step numbers.

One thing I’m still unsure about is whether this abstraction level still makes sense inside Laravel ecosystem, or if I’m overengineering something that most applications would solve with simpler patterns.

I’d really appreciate feedback from people who have experience with:

approval engines
ERP/internal systems
workflow orchestration
backend-heavy architecture
state modeling

Especially interested in opinions about:

architecture direction
workflow modeling
bitmask state approach
possible edge cases
maintainability concerns

Would love honest criticism.]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Laravel Tailwind tables (like Yajra, no Livewire)]]></title>
            <link rel="alternate" href="https://laravel.io/forum/laravel-tailwind-tables-like-yajra-no-livewire" />
            <id>https://laravel.io/30789</id>
            <author>
                <name><![CDATA[Tarcísio Santos]]></name>
            </author>
            <summary type="html">
                <![CDATA[Good evening, everyone!
I’m looking for recommendations for libraries or packages to create tables in Laravel using Tailwind CSS. Previously, I used Yajra Laravel DataTables with Bootstrap, but now I want to switch to a solution that works well with Tailwind and, preferably, doesn’t rely on Livewire.
Does anyone have suggestions for packages or approaches that can replace Yajra while keeping pagination, sorting, and filtering functionality?
Thanks!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Arr::after() — Get the next value in an array with optional]]></title>
            <link rel="alternate" href="https://laravel.io/forum/arrafter-get-the-next-value-in-an-array-with-optional" />
            <id>https://laravel.io/30823</id>
            <author>
                <name><![CDATA[Gulfaraz Arshad]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hey everyone! 👋

I recently tried to contribute `Arr::after()` to the Laravel framework 
(PR #60081) but Taylor decided to keep the framework minimal. So I 
released it as a standalone package!

## What it does

Retrieves the value after a given value in an array.

## Installation

```bash
composer require gulfaraz-arshad/laravel-arr-extended
```

## Usage

```php
use GulfarazArshad\LaravelArrExtended\Arr;

// Basic
Arr::after(['a', 'b', 'c'], 'a'); // 'b'

// Returns null when last (default)
Arr::after(['a', 'b', 'c'], 'c'); // null

// Wraps around with flag
Arr::after(['a', 'b', 'c'], 'c', wrap: true); // 'a'

// Works with associative arrays
Arr::after(['x' => 'a', 'y' => 'b'], 'a'); // 'b'
```

## Use Cases
- 🎠 Carousel navigation
- 📋 Step wizards
- ⚖️ Round-robin load balancing
- 📅 Day rotation

📦 Packagist: https://packagist.org/packages/gulfaraz-arshad/laravel-arr-extended
💻 GitHub: https://github.com/gulfaraz-arshad/laravel-arr-extended

Would love to hear your feedback! ⭐]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Can you share some real websites using Laravel]]></title>
            <link rel="alternate" href="https://laravel.io/forum/can-you-share-some-real-websites-using-laravel" />
            <id>https://laravel.io/30798</id>
            <author>
                <name><![CDATA[Serena]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi Guys,

Good day! 

Can you share some real websites using Laravel? 

And If I have a website, how do I know if there's any tags or signs that shows it's using Laravel? AI tells me to check like this document.cookie.includes('laravel_session')  to see if such a cookie...is that true?

Thanks:)]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Feedback on a lightweight Laravel rule enginepackagesppa]]></title>
            <link rel="alternate" href="https://laravel.io/forum/feedback-on-a-lightweight-laravel-rule-enginepackagesppa" />
            <id>https://laravel.io/30819</id>
            <author>
                <name><![CDATA[lei]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone,

I’ve been working on a small open-source PHP package called RuleFlow PHP:

https://github.com/yl0711-coder/ruleflow-php

It is a lightweight Decision List rule engine for PHP and Laravel applications.

The problem I’m trying to solve is common in business systems: risk checks, content moderation, marketing eligibility, and order review logic often start as simple if/else
blocks, but eventually become scattered across controllers, services, jobs, validators, and domain services.

RuleFlow keeps these business decisions as structured rules that can be:

- reviewed before deployment
- validated with an Artisan command
- tested in PHPUnit
- explained through trace() and explain()
- integrated with Laravel config and cache

It is not trying to be Drools, a RETE engine, a workflow engine, or a visual rule management platform. The goal is much smaller: make medium-sized Laravel business rules more
deterministic, readable, testable, and explainable.

Laravel integration currently includes:

- service provider auto-discovery
- config publishing
- facade support
- Laravel cache store support
- php artisan ruleflow:validate
- compatibility tests for Laravel 10, 11, and 12

I would really appreciate feedback from Laravel developers:

- Does this solve a real problem you have seen in Laravel projects?
- Is the API simple enough?
- Are the examples close to real-world usage?
- What would block you from using something like this in an internal business system?

Thanks.]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Fresh Laravel 13 install reports as Laravel 12]]></title>
            <link rel="alternate" href="https://laravel.io/forum/fresh-laravel-13-install-reports-as-laravel-12" />
            <id>https://laravel.io/30813</id>
            <author>
                <name><![CDATA[Peter Kidson]]></name>
            </author>
            <summary type="html">
                <![CDATA[Laravel Framework 12.53.0
Is this to be expected?]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[🚀 Introducing DBStan – Static Analysis for Database Queries]]></title>
            <link rel="alternate" href="https://laravel.io/forum/introducing-dbstan-static-analysis-for-database-queries" />
            <id>https://laravel.io/30812</id>
            <author>
                <name><![CDATA[Dhanik Keraliya]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone 👋

I’d like to share a package I’ve been working on called DBStan, designed to improve the reliability and quality of database interactions in Laravel applications.

🔍 Problem

While Laravel provides excellent tools for working with databases, it’s still easy to:

Write inefficient or problematic queries

Miss potential issues before runtime

Lack visibility into query structure during development

💡 Solution

DBStan aims to bring static analysis for database queries, similar to what Larastan does for code quality.

⚙️ What DBStan Does

Analyzes database queries in your Laravel application

Helps detect potential issues early

Encourages better query practices

Improves overall application performance and stability

📦 Package Link

https://packagist.org/packages/itpathsolutions/dbstan

🛠️ Installation
composer require itpathsolutions/dbstan

Demo Video

[https://www.youtube.com/watch?v=Xv5m10R3wmc](https://www.youtube.com/watch?v=Xv5m10R3wmc)

🎯 Goal

The goal of this package is to help Laravel developers catch database-related issues early in the development cycle and promote best practices.

I’d really appreciate any feedback, suggestions, or contributions from the community 🙌

Thanks!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Anti-Swagger]]></title>
            <link rel="alternate" href="https://laravel.io/forum/anti-swagger" />
            <id>https://laravel.io/30805</id>
            <author>
                <name><![CDATA[Myat Kyaw Thu]]></name>
            </author>
            <summary type="html">
                <![CDATA[If you’re a **Laravel developer**, you know the pain: you finish a feature, but then you spend another 30 minutes updating YAML files or adding messy docblock annotations just so the frontend team knows how the API works.

I built **Laravel API Visibility** to change that. No annotations, no configuration, and zero manual work.
What it does:
✅ Automatic Documentation: Scans your routes and controllers instantly.
✅ Static Analysis: Uses PHP Reflection to "read" your code and predict responses without even running an HTTP request.
✅ Postman Export: One click to generate a full Postman collection, pre-wired with headers and auth.
✅ FormRequest Support: Automatically detects your validation rules and generates example payloads.

It’s lightweight, dark-mode friendly, and stays out of your production environment by default.

Check it out on GitHub: https://github.com/myat-kyaw-thu/laravel-api-visibility

I'd love to hear what the Laravel community thinks!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[How do you handle translations in large Laravel apps?]]></title>
            <link rel="alternate" href="https://laravel.io/forum/how-do-you-handle-translations-in-large-laravel-apps" />
            <id>https://laravel.io/30804</id>
            <author>
                <name><![CDATA[Jayesh Patel]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone 👋

I’ve been working on a Laravel project where localization started getting messy—extracting keys, organizing files, and translating everything manually.

Curious how you all handle this in real-world apps?

Do you:
- manage translations manually?
- use any packages/tools?
- or have some automation workflow?

I’ve been experimenting with an AI-based approach to automate parts of this, and it’s been interesting so far.

Would love to hear your approaches and best practices.]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Laravel Threat Detection Layer]]></title>
            <link rel="alternate" href="https://laravel.io/forum/laravel-threat-detection-layer" />
            <id>https://laravel.io/30788</id>
            <author>
                <name><![CDATA[Jayanta Kumar Nath]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hey everyone,

I've been running a SaaS for a couple of years and kept seeing suspicious patterns — SQL injection probes, scanner bots hitting my login form, someone scanning for .env files. Had zero real-time visibility into any of it.

So I extracted the detection layer from my production app into a standalone package: laravel-threat-detection.

`composer require jayanta/laravel-threat-detection`

One middleware, zero config. It logs SQL injection, XSS, RCE, directory traversal, SSRF, scanner bots (sqlmap, nikto, burp suite, nmap), DDoS patterns, Log4Shell — 130+ patterns total — to a threat_logs table.

The key thing: it never blocks anything. Every request goes through normally. Purely passive, so zero risk of false positives breaking your app.

What I spent the most time on:

Evasion resistance — payloads are normalized before matching so UNION/**/SELECT and double URL encoding (%2527) don't slip through.

Confidence scoring — each threat gets a 0–100 score based on match count, where the pattern was found (query string scores higher than body), and user-agent signals.

Also ships with:
- Dark-mode dashboard (no build step, Alpine + Tailwind CDN)
- Slack alerts for high-severity threats
- 15 REST API endpoints
- Geo-enrichment (country, ISP, cloud provider)
- CSV export

GitHub: https://github.com/jay123anta/laravel-threat-detection

Packagist: https://packagist.org/packages/jayanta/laravel-threat-detection

Would love to hear how others handle security visibility in Laravel — are you using anything for this or relying purely on server logs?]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Laravel Email Preference Center Package]]></title>
            <link rel="alternate" href="https://laravel.io/forum/laravel-email-preference-center-package" />
            <id>https://laravel.io/30795</id>
            <author>
                <name><![CDATA[Lenos Christodoulou]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone 👋

  I recently built and open-sourced a Laravel package that adds a **complete email preference center** to your application.

  In many apps the only option users have is **"unsubscribe from everything."**
  That often means losing users who only wanted *fewer* emails, not zero.

  This package lets users control **exactly what emails they receive and how often**.

  ## What it does

  * 📬 **Smart notification channel** – drop-in replacement for `'mail'`, automatically routes notifications based on user preferences
  * 🎛️ **Self-service preference center UI** – ready-to-use Blade interface where users manage email categories and frequency
  * 🔗 **One-click unsubscribe** – RFC 8058 compliant (works with Gmail & Apple Mail)
  * 📋 **Digest batching** – automatic daily or weekly digests
  * 🔒 **GDPR consent logging** – records preference changes with IP, user agent, and timestamp
  * 🧩 **Polymorphic support** – works with any notifiable model, not just `User`
  * ⚡ **Flexible category declaration** – attribute, interface, or config mapping

  ## Example usage

  ```php
  use Lchris44\EmailPreferenceCenter\Attributes\EmailCategory;

  #[EmailCategory('marketing')]
  class NewsletterNotification extends Notification
  {
      public function via(object $notifiable): array
      {
          return ['email-preferences'];
      }
  }
  ```

  The package will automatically check the user's preferences and decide whether to:

  * send immediately
  * queue to a digest
  * skip the notification

  ## Installation

  ```bash
  composer require lchris44/laravel-email-preference-center
  ```

  ## Links

  GitHub: https://github.com/lchris44/laravel-email-preference-center

  Documentation: https://darkorchid-spoonbill-752711.hostingersite.com/

  ---

  I'd love feedback from the community — especially on:

  * the API design
  * real-world use cases
  * features you think are missing

  Thanks!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Target DeviceUserCodeViewResponse is not instantiable]]></title>
            <link rel="alternate" href="https://laravel.io/forum/target-deviceusercodeviewresponse-is-not-instantiable" />
            <id>https://laravel.io/30787</id>
            <author>
                <name><![CDATA[Craig1231]]></name>
            </author>
            <summary type="html">
                <![CDATA[I am trying to add Laravel Passport to my project following the documentation.

When I try to navigate to [myproject]/oauth/device, it says the following...

```
Illuminate\Contracts\Container\BindingResolutionException
vendor/laravel/framework/src/Illuminate/Container/Container.php:1411
Target [Laravel\Passport\Contracts\DeviceUserCodeViewResponse] is not instantiable.
```

I have created the project using the Vue starter kit, but what am I missing? The documentation doesn't mention I need to implement DeviceUserCodeViewResponse anywhere.

Any help on this would be appreciated.]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Images not rendering in Laravel on Shared Hosting]]></title>
            <link rel="alternate" href="https://laravel.io/forum/images-not-rendering-in-laravel-on-shared-hosting" />
            <id>https://laravel.io/30782</id>
            <author>
                <name><![CDATA[Neha]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi everyone,

I'm developing an ad marketplace where I generate PNG previews of Blade templates using an external API (HCTI). Everything works perfectly on localhost, but I'm facing a critical issue on my live server (Shared Hosting).

The Problem:

Images uploaded via Livewire (stored in storage/app/public/ads/content) are not appearing in the Blade templates on the live site.

Oddly, .AVIF images work in the generated previews, but .JPG and .PNG do not.

Standard asset('storage/...') calls return broken links across the entire site.

What I've Tried:

I attempted to run php artisan storage:link, but my host restricts the symlink() PHP function, resulting in a 500 Server Error.

I've updated my .env APP_URL to the live domain and cleared the config cache.

I tried converting images to Base64 strings before sending them to the API. This fixed the preview generation for some files, but the rest of the website is still "image-blind".

Current Theory: > It seems to be a Base Path issue where the live server cannot resolve the virtual public/storage directory because the physical symlink is missing/blocked.

Has anyone found a robust way to serve storage files on shared hosting without a symlink, or a way to force Laravel's asset() helper to point to the actual physical path?

Thanks in advance!]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Just Srarting - Help Needed.]]></title>
            <link rel="alternate" href="https://laravel.io/forum/just-srarting-help-needed" />
            <id>https://laravel.io/30781</id>
            <author>
                <name><![CDATA[Julie Kerr]]></name>
            </author>
            <summary type="html">
                <![CDATA[Hi,

I am just starting to learn Laraval, I got a website done with a freelancer but I don't won't
to disturb him for small edits.

The Problem is I am not able to edit a single code on a page, It does not reflects on the website.

This is the register page https://mydomain.com/register at my domain, which I want to edit.
I have one file located here : public_html/resources/views/frontend/register.blade.php and 
which I edited, but the changes does not shows on the site.

Any help is appreciated.

Thanks]]>
            </summary>
                                    <updated>2026-06-19T10:47:28+00:00</updated>
        </entry>
    </feed>
