Build Beautiful TUI Applications in PHP using Parfait
https://youtu.be/plId782tsyc
https://redd.it/1qsktuq
@r_php
https://youtu.be/plId782tsyc
https://redd.it/1qsktuq
@r_php
YouTube
Build Beautiful TUI Applications in PHP using Parfait
I've been building a layered rendering engine and component library for building TUI applications named Parfait.
Here's a sneak peek!
Here's a sneak peek!
Laravel’s not killing Vapor, but they’re definitely showing you the door
https://jpcaparas.medium.com/laravels-not-killing-vapor-but-they-re-definitely-showing-you-the-door-b719d9b85a24?sk=0c03287ef4930fffbb1edffd7f7f8b07
https://redd.it/1qsdhp1
@r_php
https://jpcaparas.medium.com/laravels-not-killing-vapor-but-they-re-definitely-showing-you-the-door-b719d9b85a24?sk=0c03287ef4930fffbb1edffd7f7f8b07
https://redd.it/1qsdhp1
@r_php
Medium
Laravel’s not killing Vapor, but they’re definitely showing you the door
Laravel’s not killing Vapor, but they’re definitely showing you the door The signs are everywhere. From migration guides to conference conversations, Laravel’s message is clear: Vapor had a …
Is Laravel Cloud generally more expensive than Laravel Vapor?
Should I migrate?
https://redd.it/1qseafg
@r_php
Should I migrate?
https://redd.it/1qseafg
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
Short PHP Fundamentals Quiz for Beginners
I built a beginner-friendly PHP fundamentals quiz that teaches the concepts as you move through it, rather than just testing you at the end.
There will be audio explanations coming soon. Would love any feedback from folks learning or teaching PHP in the meanwhile - https://impressto.ca/php\_quizzes.php#php-fundamentals
https://redd.it/1qt3dl5
@r_php
I built a beginner-friendly PHP fundamentals quiz that teaches the concepts as you move through it, rather than just testing you at the end.
There will be audio explanations coming soon. Would love any feedback from folks learning or teaching PHP in the meanwhile - https://impressto.ca/php\_quizzes.php#php-fundamentals
https://redd.it/1qt3dl5
@r_php
Impressto Homelab
PHP Quiz | Impressto
Impressto Homelab - Tutorials, Tools, and Resources for Developers and Makers
Soft Deletes w/ Cascade
I might be overcomplicating this, but here it goes.
I'm currently researching soft deletes and the related issues with cascading relationships and restoring records accurately. I've explored a few packages, but they don't resolve a few issues I feel like I might run into. For instance, large amounts of soft deletes should be dispatched to jobs to preserve application performance. This carries it's own complications, but even more so with restoring that data. Currently, I've been restoring related data with timestamps and model observers, but I'm looking for something a bit more 'magical'.
I'm curious what others have been doing, as most of what I've found is old information. Maybe those solutions have been good enough?
So tell me, how do you handle soft deletes on models with relationships, and then how do you restore them when you need to.
https://redd.it/1qt5fym
@r_php
I might be overcomplicating this, but here it goes.
I'm currently researching soft deletes and the related issues with cascading relationships and restoring records accurately. I've explored a few packages, but they don't resolve a few issues I feel like I might run into. For instance, large amounts of soft deletes should be dispatched to jobs to preserve application performance. This carries it's own complications, but even more so with restoring that data. Currently, I've been restoring related data with timestamps and model observers, but I'm looking for something a bit more 'magical'.
I'm curious what others have been doing, as most of what I've found is old information. Maybe those solutions have been good enough?
So tell me, how do you handle soft deletes on models with relationships, and then how do you restore them when you need to.
https://redd.it/1qt5fym
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
I built a declarative ETL / Data Ingestion library for Laravel using Generators and Queues
Hi everyone,
I recently released a library to handle data ingestion (CSV, Excel, XML streams) in a more structured way than the typical "parse and loop" approach.
The goal was to separate the **definition** of an import from the **execution**.
**Key Architectural Decisions:**
1. **Memory Efficiency:** It utilizes Generators (`yield`) to stream source files line-by-line, keeping the memory footprint flat regardless of file size.
2. **Concurrency:** It chunks the stream and dispatches jobs to the Queue, allowing for horizontal scaling.
3. **Atomic Chunks:** It supports transactional chunking—if one row in a batch of 100 fails, the whole batch rolls back (optional).
4. **Observer Pattern:** It emits events for every lifecycle step (RowProcessed, ChunkProcessed, RunFailed) to decouple logging/notification logic.
5. **Error Handling:** Comprehensive error collection with context (row number, column, original value) and configurable failure strategies.
It's primarily built for Laravel (using Eloquent), but I tried to keep the internal processing logic clean.
Here is a quick example of a definition:
// UserImporter.php
public function getConfig(): IngestConfig
{
return IngestConfig::for(User::class)
->fromSource(SourceType::FTP, ['path' => '/daily_dump.csv'])
->keyedBy('email')
->mapAndTransform('status', 'is_active', fn($val) => $val === 'active');
}
I'm looking for feedback on the architecture, specifically:
* How I handle the `RowProcessor` logic
* Memory usage patterns with large files (tested with 2GB+ CSVs)
* Error recovery and retry mechanisms
**Repository:** [https://github.com/zappzerapp/laravel-ingest](https://github.com/zappzerapp/laravel-ingest)
Thanks!
https://redd.it/1qw3obv
@r_php
Hi everyone,
I recently released a library to handle data ingestion (CSV, Excel, XML streams) in a more structured way than the typical "parse and loop" approach.
The goal was to separate the **definition** of an import from the **execution**.
**Key Architectural Decisions:**
1. **Memory Efficiency:** It utilizes Generators (`yield`) to stream source files line-by-line, keeping the memory footprint flat regardless of file size.
2. **Concurrency:** It chunks the stream and dispatches jobs to the Queue, allowing for horizontal scaling.
3. **Atomic Chunks:** It supports transactional chunking—if one row in a batch of 100 fails, the whole batch rolls back (optional).
4. **Observer Pattern:** It emits events for every lifecycle step (RowProcessed, ChunkProcessed, RunFailed) to decouple logging/notification logic.
5. **Error Handling:** Comprehensive error collection with context (row number, column, original value) and configurable failure strategies.
It's primarily built for Laravel (using Eloquent), but I tried to keep the internal processing logic clean.
Here is a quick example of a definition:
// UserImporter.php
public function getConfig(): IngestConfig
{
return IngestConfig::for(User::class)
->fromSource(SourceType::FTP, ['path' => '/daily_dump.csv'])
->keyedBy('email')
->mapAndTransform('status', 'is_active', fn($val) => $val === 'active');
}
I'm looking for feedback on the architecture, specifically:
* How I handle the `RowProcessor` logic
* Memory usage patterns with large files (tested with 2GB+ CSVs)
* Error recovery and retry mechanisms
**Repository:** [https://github.com/zappzerapp/laravel-ingest](https://github.com/zappzerapp/laravel-ingest)
Thanks!
https://redd.it/1qw3obv
@r_php
GitHub
GitHub - zappzerapp/laravel-ingest: A robust, configuration-driven ETL and data import framework for Laravel. Handles CSV/Excel…
A robust, configuration-driven ETL and data import framework for Laravel. Handles CSV/Excel streaming, queues, validation, and relationships. - zappzerapp/laravel-ingest
Fastrack your API integrations with the connector pattern
Hi all,
It's been a while since I've written anything meaningful on my blog - it's not easy finding the time to write these!
I've recently built a simple package for my work projects and feel it could also be a useful tool for other Laravel devs out there.
This is a quick tutorial on using the package and the advantages it provides
Please do have a read and feel free to provide some feedback - that's the only way we're going to improve as developers!
https://christalks.dev/post/fastrack-your-api-integrations-with-the-connector-pattern-3104af04
https://redd.it/1qvl00r
@r_php
Hi all,
It's been a while since I've written anything meaningful on my blog - it's not easy finding the time to write these!
I've recently built a simple package for my work projects and feel it could also be a useful tool for other Laravel devs out there.
This is a quick tutorial on using the package and the advantages it provides
Please do have a read and feel free to provide some feedback - that's the only way we're going to improve as developers!
https://christalks.dev/post/fastrack-your-api-integrations-with-the-connector-pattern-3104af04
https://redd.it/1qvl00r
@r_php
christalks.dev
Fastrack your API integrations with the connector pattern
Integrating with external APIs is a common task for a developer, but it can quickly become a hard to maintain mess! I’ve often found myself repeating the same boilerplate code across different projects—manually setting up headers, handling authentication…
Who is hiring? / 15+ experienced Symfony developer
Hi, I am 15+ years of experienced Symfony developer who looking for new jobs. I am looking for remote symfony/full stack web development roles.
CV: https://emre.xyz/resume.pdf
Github: https://github.com/delirehberi
Thanks
https://redd.it/1quxwoe
@r_php
Hi, I am 15+ years of experienced Symfony developer who looking for new jobs. I am looking for remote symfony/full stack web development roles.
CV: https://emre.xyz/resume.pdf
Github: https://github.com/delirehberi
Thanks
https://redd.it/1quxwoe
@r_php
AuditTrailBundle now has a Symfony Flex recipe
AuditTrailBundle recipe has been merged into symfony/recipes-contrib.
This adds automatic bundle enabling and default configuration when installing the bundle.
Thanks to the Symfony team and maintainers for reviewing and accepting it.
https://redd.it/1qum3e4
@r_php
AuditTrailBundle recipe has been merged into symfony/recipes-contrib.
This adds automatic bundle enabling and default configuration when installing the bundle.
Thanks to the Symfony team and maintainers for reviewing and accepting it.
https://redd.it/1qum3e4
@r_php
GitHub
GitHub - rcsofttech85/AuditTrailBundle: A Symfony audit bundle for Doctrine ORM. Lightweight entity tracking and audit logging…
A Symfony audit bundle for Doctrine ORM. Lightweight entity tracking and audit logging for compliance. - rcsofttech85/AuditTrailBundle
Should I contribute to open-source or just complain about stuff not working?
Using complex software is already hard, but contributing to it is a pain. But manageable, even fun, even useful.
I'm the lead of a small dev team that has been using Laminas and Mezzio before they were even called that.
In recent years, we have also been involved in pushing Laminas/Mezzio development forward, especially for the packages that we use every day.
At the end of the day, you gotta put your money where your mouth is.
How about you guys? What software are you using, authored by someone else, that you also contributed to?
https://getlaminas.org/blog/2026-01-14-call-for-contributors.html
https://redd.it/1qwhkyb
@r_php
Using complex software is already hard, but contributing to it is a pain. But manageable, even fun, even useful.
I'm the lead of a small dev team that has been using Laminas and Mezzio before they were even called that.
In recent years, we have also been involved in pushing Laminas/Mezzio development forward, especially for the packages that we use every day.
At the end of the day, you gotta put your money where your mouth is.
How about you guys? What software are you using, authored by someone else, that you also contributed to?
https://getlaminas.org/blog/2026-01-14-call-for-contributors.html
https://redd.it/1qwhkyb
@r_php
getlaminas.org
Laminas Project - Call for Contributors
my first project
hey guys! This is my first PHP project. It’s a website designed to practice reading code in different programming languages, where a new daily challenge appears in a random language every day (inspired by games like Wordle).
If anyone is interested in trying it out: https://dailycode.page.gd
I also made the project’s source code available on GitHub: https://github.com/rafssunny/dailycode
https://redd.it/1qwj01p
@r_php
hey guys! This is my first PHP project. It’s a website designed to practice reading code in different programming languages, where a new daily challenge appears in a random language every day (inspired by games like Wordle).
If anyone is interested in trying it out: https://dailycode.page.gd
I also made the project’s source code available on GitHub: https://github.com/rafssunny/dailycode
https://redd.it/1qwj01p
@r_php
New in LarAgent: Automatic Provider Failover and Smarter Tool Development
https://blog.laragent.ai/new-in-laragent-automatic-provider-failover-and-smarter-tool-development/
https://redd.it/1qwltf4
@r_php
https://blog.laragent.ai/new-in-laragent-automatic-provider-failover-and-smarter-tool-development/
https://redd.it/1qwltf4
@r_php
LarAgent
New in LarAgent: Automatic Provider Failover and Smarter Tool Development
LarAgent v1.0 marked the package as production-ready. Now, v1.1 and v1.2 push things further — with automatic provider failover, smarter tool development using DataModels, and flexible identity management for multi-tenant apps.
Let's dive into what's new.…
Let's dive into what's new.…
Expression Parser in PHP/JS for form validation – feedback welcome
I built an expression parser used for form validation and calculated fields, with the same logic implemented in both PHP and JavaScript.
To test it properly, I set up two separate pages: one running the parser in JavaScript, one running the same expressions in PHP.
I’d really appreciate some help testing it:
Are there any inconsistencies or bugs between the PHP and JS versions?
Do you think any fundamental operators or functions are missing?
JS version: https://milkadmin.org/milk-admin/?page=expression-parser
PHP version: https://milkadmin.org/milk-admin/?page=expression-parser&action=php
For anyone interested in how the PHP version was built, I also wrote an article explaining the core steps involved in developing a mathematical expression parser:
– Splitting the input into tokens
– Building an Abstract Syntax Tree (AST)
– Recursively evaluating the AST
The article focuses on algorithms and data structures, not on any language-specific feature or library.
Article: https://www.milkadmin.org/article.php?id=07-ast
It’s meant as an introduction for those who enjoy understanding how things work under the hood.
https://redd.it/1qvtprr
@r_php
I built an expression parser used for form validation and calculated fields, with the same logic implemented in both PHP and JavaScript.
To test it properly, I set up two separate pages: one running the parser in JavaScript, one running the same expressions in PHP.
I’d really appreciate some help testing it:
Are there any inconsistencies or bugs between the PHP and JS versions?
Do you think any fundamental operators or functions are missing?
JS version: https://milkadmin.org/milk-admin/?page=expression-parser
PHP version: https://milkadmin.org/milk-admin/?page=expression-parser&action=php
For anyone interested in how the PHP version was built, I also wrote an article explaining the core steps involved in developing a mathematical expression parser:
– Splitting the input into tokens
– Building an Abstract Syntax Tree (AST)
– Recursively evaluating the AST
The article focuses on algorithms and data structures, not on any language-specific feature or library.
Article: https://www.milkadmin.org/article.php?id=07-ast
It’s meant as an introduction for those who enjoy understanding how things work under the hood.
https://redd.it/1qvtprr
@r_php
Are you using Leaf PHP?
While I like Laravel, I feel it's just too bloated for every project. I started using Leaf PHP, love it! clean API, lean and you can bring in Laravel stuff when needed.
Compared to the big two Laravel and Symfony, there's not much mention of other PHP frameworks.
Are you using Leaf? and can you describe the nature of your app. e.g. "Hobby", "Commercial with 10k users" etc...
Feel free to elaborate on why you prefer leaf and any other thoughts you may have on it.
Thanks!
https://redd.it/1qwouxa
@r_php
While I like Laravel, I feel it's just too bloated for every project. I started using Leaf PHP, love it! clean API, lean and you can bring in Laravel stuff when needed.
Compared to the big two Laravel and Symfony, there's not much mention of other PHP frameworks.
Are you using Leaf? and can you describe the nature of your app. e.g. "Hobby", "Commercial with 10k users" etc...
Feel free to elaborate on why you prefer leaf and any other thoughts you may have on it.
Thanks!
https://redd.it/1qwouxa
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Preparing for the job
Hello!
In three weeks I start with my first fulltime job as a backend PHP dev. I have some experience with Symfony at an internship/summer job. But to prepare for the job ahead I want to take these weeks to get some hands on experience again with PHP/Symfony.
I was thinking of creating a cool useful composer package from which I can learn a lot! Maybe something that Symfony/PHP/Composer is now missing. Anyone got cool ideas? Or any other ideas on how I can prepare myself for the job ahead? Maybe cool projects?
Thanks in advance!
https://redd.it/1qwrafh
@r_php
Hello!
In three weeks I start with my first fulltime job as a backend PHP dev. I have some experience with Symfony at an internship/summer job. But to prepare for the job ahead I want to take these weeks to get some hands on experience again with PHP/Symfony.
I was thinking of creating a cool useful composer package from which I can learn a lot! Maybe something that Symfony/PHP/Composer is now missing. Anyone got cool ideas? Or any other ideas on how I can prepare myself for the job ahead? Maybe cool projects?
Thanks in advance!
https://redd.it/1qwrafh
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Building with the New Laravel AI SDK w/ Taylor Otwell
https://www.youtube.com/watch?v=8MJ7r6niTus
https://redd.it/1qwrvwl
@r_php
https://www.youtube.com/watch?v=8MJ7r6niTus
https://redd.it/1qwrvwl
@r_php
YouTube
Building AI Applications with the Laravel AI SDK
Laravel AI SDK gives you the power to build complete AI‑native applications in a single first‑party package.
Join Taylor Otwell and Josh Cirre as we take a first look at the Laravel AI SDK and build and ship something amazing with it.
Demo: https://lar…
Join Taylor Otwell and Josh Cirre as we take a first look at the Laravel AI SDK and build and ship something amazing with it.
Demo: https://lar…
Laravel 12.49: New Collection Method, Query Builder Upgrade & Better Artisan
https://youtu.be/3iL51liqYiw
https://redd.it/1qwwldl
@r_php
https://youtu.be/3iL51liqYiw
https://redd.it/1qwwldl
@r_php
YouTube
What's New in Laravel 12.49: hasSole(), Subquery Ranges & Searchable Tables
Laravel 12.49 brings bug fixes, enum support improvements, memory leak fixes, and new features. In this video we cover:
➡️ hasSole() for collections https://github.com/laravel/framework/pull/58463
➡️ whereBetweenColumns() subquery support https://githu…
➡️ hasSole() for collections https://github.com/laravel/framework/pull/58463
➡️ whereBetweenColumns() subquery support https://githu…
Symfony Components Tutorial
Is there any good tutorial about using Symfony Components in a PHP Project without necessarily using the entire Symfony Framework? Better still, on creating a framework from scratch out of Symfony components. Thanks.
https://redd.it/1qx2zyv
@r_php
Is there any good tutorial about using Symfony Components in a PHP Project without necessarily using the entire Symfony Framework? Better still, on creating a framework from scratch out of Symfony components. Thanks.
https://redd.it/1qx2zyv
@r_php
Reddit
From the symfony community on Reddit
Explore this post and more from the symfony community