PHP Reddit – Telegram
PHP Reddit
34 subscribers
286 photos
36 videos
24.7K links
Channel to sync with /r/PHP /r/Laravel /r/Symfony. Powered by awesome @r_channels and @reddit2telegram
Download Telegram
First time Tried to build a RAG using Laravel, but..

So laravel has so many built-in packages which are I think very profound for a RAG, so i gave it a try, basic structure is done but I'm having some problems.

1- the system is gathering lot of info from the database based on query relevance, but when its presented to LLM(gemini) it's just ignoring most of the data and picking up a very little of that, and the answers are vague.

2- Ridiculous answers- Even for just a 'hey' its giving lengthy and irrelivent answers.

3- Timings- 15-20 seconds for a simple answer

I haven't used any vector database, and is using MySQL as of now, so it might be differential.. but this was just a curiosity thing so i thought maybe ask here first, what should i do to improve it as i wanna make it functional now.


here's what i am using:

"php": "\^8.2",
"google-gemini-php/laravel": "\^2.0",
"google/apiclient": "2.15",
"google/auth": "\^1.47",
"laravel/framework": "\^12.0",
"laravel/sanctum": "\^4.0",
"laravel/tinker": "\^2.10.1",
"maatwebsite/excel": "\^3.1",
"meilisearch/meilisearch-php": "\^1.16",
"phpoffice/phpspreadsheet": "\^1.30",
"smalot/pdfparser": "\^2.12",
"spatie/browsershot": "\^5.0",
"spatie/crawler": "\^8.4",
"symfony/dom-crawler": "\^7.3"


https://redd.it/1ox0gpl
@r_php
Sentience Database, Querybuilder + database abstraction

Hey everyone,


Sentience is my personal framework project that i've kept evolving over the years, even using it in some startup projects. I decided to separate the database abstraction from the framework.

https://github.com/Sentience-Framework/database

Why did i create this package?

There are things that existing database abstraction packages do that i think can be done better. I've pulled inspiration from Golang's BUN ORM package for this database abstraction, with new or improved features that make my developer experience more pleasant. The ORM part of the abstraction is separated from the database abstraction, to reduce bloat, when it's highly likely you only want a database abstraction to execute some basic queries if you're not already using an ORM integrated in a framework.

The README contains all the documentation for the project. I've kept it short and simple to make it easy to review.


I would love to get your feedback on the project!

https://redd.it/1oww7nm
@r_php
Found a new library for dynamic json templating.
https://djson.dev/

https://redd.it/1oxa44p
@r_php
Why is apache still so popular even as nginx+php-fpm has proven its mettle with performance?

As I understand, the popular consensus today is that nginx+php-fpm performs faster than apache even with the mpm_event process management enabled?

But when it comes to real world usage, many production instances I observe these days still deploy apache a lot. Even cpanel based web hosting (shared or dedicated instances) are more often apache based than nginx.

Is it due to some old habits and dependence on apache specific features like .htaccess support? Or is it the case that apache has actually caught up in the race with ngnix and the performance difference is quite negligible these days?

https://redd.it/1oxqkvq
@r_php
Trace routes. No static analysis BS, just captures what actually runs.

What up guys,

Been debugging a slow endpoint and had no clue which files it was actually loading. Built this package to trace the real execution path instead of guessing.

What it does:
- Records every file PHP loads during a request
- Shows memory usage and execution time
- Categorizes files (controllers, models, policies, etc.)
- Works with any Laravel route


Usage in route/***.php
TraceRouteDependencies::enable();

Route::middleware(['trace-route'])->group(function () {
Route::get('/api/users', [UserController::class, 'index']);
});


Hit the route, then check `storage/logs/traces/` for a JSON file with everything that loaded.

Example output:
{
"route": "api.users.index",
"files_loaded": {
"controllers": ["app/Http/Controllers/UserController.php"],
"models": ["app/Models/User.php"],
"policies": ["app/Policies/UserPolicy.php"]
},
"memory_used_mb": 2.5,
"execution_time_ms": 45.2
}


Kinda usefull for understanding wtf a route is doing or finding performance issues. No static analysis BS, just captures what actually runs.


https://github.com/TonyGeez/laravel-route-tracer

🤠

https://redd.it/1oxs75m
@r_php
Run only affected tests?

Hey,

I want to run only affected tests - to cut down a bit on CI wastage and improve pipeline time.

Other tools I've worked with have this (e.g. NX) - I've gone through the docs and can't find anything on this.

Have I missed something and is there a command for it? Or have people brewed their own solutions/packages for this?

Thanks!

https://redd.it/1oybjpo
@r_php
Static Methods Vs. Lazy Objects | PHP

Why should I use the lazy objects instead of static methods? I don't understand the difference use case of them.

https://redd.it/1oyfzzc
@r_php
Should I opensource my DI container?

I've been using a custom dependency injection container in a couple of my php websites recently it's ~35 lines and still has all the features I need. It's explicit (so no autowiring) and has an emphasis on developer experience despite being so small, it has helper methods for factories, singletons, and lazy singletons. I've found it ideal for no/micro framework projects, cli noscripts, and possibly for use in laravel packages. What do you think? Is this something worth sharing?

https://redd.it/1oyj0u1
@r_php
Weekly /r/Laravel Help Thread

Ask your Laravel help questions here. To improve your chances of getting an answer from the community, here are some tips:

What steps have you taken so far?
What have you tried from the documentation?
Did you provide any error messages you are getting?
Are you able to provide instructions to replicate the issue?
Did you provide a code example?
Please don't post a screenshot of your code. Use the code block in the Reddit text editor and ensure it's formatted correctly.

For more immediate support, you can ask in the official Laravel Discord.

Thanks and welcome to the r/Laravel community!

https://redd.it/1oysfch
@r_php
EHTML — Extended HTML for Real Apps. Sharing it in case it helps someone.

Hi everyone! I’ve been working on a project called EHTML, an HTML-first approach to building dynamic pages using mostly HTML. It lets you handle things like templating, loops, conditions, data loading, reusable components, and nested forms — all without a build step or heavy JavaScript setup.

I originally built it to simplify my own workflow for small apps and prototypes, but I figured others who prefer lightweight or no-build approaches might find it useful too. It runs entirely in the browser using native ES modules and custom elements, so there’s no bundler or complex tooling involved.

If you enjoy working close to the browser or like experimenting with minimalistic web development, you might find it interesting. Just sharing in case it helps someone or sparks ideas. Cheers!


Link: https://e-html.org/

https://redd.it/1oyv9xw
@r_php
Show the progress of your background jobs in your UI and support cancelling running jobs safely
https://redd.it/1oyynco
@r_php
Weekly Ask Anything Thread

Feel free to ask any questions you think may not warrant a post. Asking for help here is also fine.

https://redd.it/1oz6q1c
@r_php