How to Run a Laravel Application With Reverb in an Azure Web App
https://cypressnorth.com/web-programming-and-development/how-to-run-a-laravel-application-with-reverb-in-an-azure-web-app/
https://redd.it/1iyov3q
@r_php
https://cypressnorth.com/web-programming-and-development/how-to-run-a-laravel-application-with-reverb-in-an-azure-web-app/
https://redd.it/1iyov3q
@r_php
Cypress North
Host a Laravel Application on an Azure Web App | Cypress North
Deploying a Laravel application to an Azure web app works great, but the setup can be tricky. In this tutorial, we walk you through how to configure an Azure web app to host your Laravel + Reverb application.
Opensource project with paid version. What workflow?
I have a few personal, private projects (mainly Symfony based) with some commercial potential. I'm considdering releasing a opensource base version, but would also like to explore the possibility of maintaining a paid, more advanced version.
How would one organize the development workflow of something like this? If I were to maintain 2 seperate repositories/codebases, changes affecting both versions would need to be applied to both codebases. Depending on the difference, there might be common parts, parts that behave differently between versions, of parts that are only present in one of the two versions.
I assume some problems can be solved with a good branching strategy in a single repository, others maybe with git submodules. But which would be "leading"? The advanced version that is then stripped down to the base version, of the base version that is then enriched with the advanced features?
I assume there's not single right way to do this, and for me it's a first. So if anyone has done something similar, I would really like to hear your experience with this.
https://redd.it/1iyvion
@r_php
I have a few personal, private projects (mainly Symfony based) with some commercial potential. I'm considdering releasing a opensource base version, but would also like to explore the possibility of maintaining a paid, more advanced version.
How would one organize the development workflow of something like this? If I were to maintain 2 seperate repositories/codebases, changes affecting both versions would need to be applied to both codebases. Depending on the difference, there might be common parts, parts that behave differently between versions, of parts that are only present in one of the two versions.
I assume some problems can be solved with a good branching strategy in a single repository, others maybe with git submodules. But which would be "leading"? The advanced version that is then stripped down to the base version, of the base version that is then enriched with the advanced features?
I assume there's not single right way to do this, and for me it's a first. So if anyone has done something similar, I would really like to hear your experience with this.
https://redd.it/1iyvion
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Bester Laravel practices — a commentary on the best practices
https://github.com/tontonsb/laravel-bester-practices
https://redd.it/1iyvxmm
@r_php
https://github.com/tontonsb/laravel-bester-practices
https://redd.it/1iyvxmm
@r_php
GitHub
GitHub - tontonsb/laravel-bester-practices
Contribute to tontonsb/laravel-bester-practices development by creating an account on GitHub.
Choosing a DB for Laravel production
I am relatively new to Laravel and my experience with DB in the past have been small personal projects that ran fine on SQLite. I am planning on launching my first SaaS soon and even though I am not expecting hundreds of thousands of users, it will be more than my previous projects. I have never used a MySQL or Postgres DB before. I have developed my project on my Mac using SQLite, but should I use MySQL or Postgres in production? Will there be hurdles when switching DBs from dev to production? Is there much difficulty in using MySQL instead of SQLite besides the connection environment variables?
https://redd.it/1iywwpd
@r_php
I am relatively new to Laravel and my experience with DB in the past have been small personal projects that ran fine on SQLite. I am planning on launching my first SaaS soon and even though I am not expecting hundreds of thousands of users, it will be more than my previous projects. I have never used a MySQL or Postgres DB before. I have developed my project on my Mac using SQLite, but should I use MySQL or Postgres in production? Will there be hurdles when switching DBs from dev to production? Is there much difficulty in using MySQL instead of SQLite besides the connection environment variables?
https://redd.it/1iywwpd
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
Laravel is going in the wrong direction IMHO
People will probably downvote me for this and say it's a skill issue, and maybe it is... But I think Laravel is going in the wrong direction.
I installed a new Laravel 12 app today and have no clue what the heck I am looking at.
1. Jetstream is end of life (why?) and the replacement starter kits come without basic things like 2FA. Instead now Laravel is pushing a 3rd party API called "WorkOS". WorkOS claims the first million users are free (until it's not and you're locked in...) but I just want my auth to be local, not having to rely on some third party. This should have been made optional IMHO.
2. I am looking at the Livewire starter kit. Which is now relying on Volt, so now I have to deal with PHP + HTML + JS in the same file. I thought we stopped doing this back in 2004?
3. Too much magic going on to understand basic things. The starter kits login.blade.php:
new #Layout('components.layouts.auth') class extends Component {
#Validate('required|string|email')
What is this?! Why is it using an attribute for the class name?
4. This starter kit now uses Flux for it's UI instead of just plain Tailwind. Now I don't particularly dislike Flux, but it feels this was done to push users to buy Calebs "Pro" plan.
It used to be so easy. Install Laravel, perhaps use a starter kit like Jetstream to quickly scaffold some auth and UI and you could build. It was always fairly easy to rip out Tailwind and use whatever you wanted instead too. Now it's way too complicated with Volt, Flux, no Jetstream, unclear PHP attributes, mixing HTML/PHP/JS etc...
Am I the only one?
https://redd.it/1iyyxk4
@r_php
People will probably downvote me for this and say it's a skill issue, and maybe it is... But I think Laravel is going in the wrong direction.
I installed a new Laravel 12 app today and have no clue what the heck I am looking at.
1. Jetstream is end of life (why?) and the replacement starter kits come without basic things like 2FA. Instead now Laravel is pushing a 3rd party API called "WorkOS". WorkOS claims the first million users are free (until it's not and you're locked in...) but I just want my auth to be local, not having to rely on some third party. This should have been made optional IMHO.
2. I am looking at the Livewire starter kit. Which is now relying on Volt, so now I have to deal with PHP + HTML + JS in the same file. I thought we stopped doing this back in 2004?
3. Too much magic going on to understand basic things. The starter kits login.blade.php:
new #Layout('components.layouts.auth') class extends Component {
#Validate('required|string|email')
What is this?! Why is it using an attribute for the class name?
4. This starter kit now uses Flux for it's UI instead of just plain Tailwind. Now I don't particularly dislike Flux, but it feels this was done to push users to buy Calebs "Pro" plan.
It used to be so easy. Install Laravel, perhaps use a starter kit like Jetstream to quickly scaffold some auth and UI and you could build. It was always fairly easy to rip out Tailwind and use whatever you wanted instead too. Now it's way too complicated with Volt, Flux, no Jetstream, unclear PHP attributes, mixing HTML/PHP/JS etc...
Am I the only one?
https://redd.it/1iyyxk4
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
I got DeepSeek running with PHP (the model, not an API call)
Hey everyone!
I found this library that runs ONNX models inside of vanilla PHP code, and decided to try and make it my mission to get an LLM model running with it.
Here's a video showing it off.
Ended up accomplishing it (kind of) with a distilled 1.5B DeepSeek model and a custom tokenizer class that was drawn up like 80% with Claude.
The model returns back generated text successfully, although it gets stuck in some weird repetitive loops. That could probably be optimized out, I think it's due to the way that the existing generated text is fed back into the model, but I'm happy with the proof of concept!
Full source code is here if you would like to play around with it, or see it for yourself.
https://redd.it/1iz1n59
@r_php
Hey everyone!
I found this library that runs ONNX models inside of vanilla PHP code, and decided to try and make it my mission to get an LLM model running with it.
Here's a video showing it off.
Ended up accomplishing it (kind of) with a distilled 1.5B DeepSeek model and a custom tokenizer class that was drawn up like 80% with Claude.
The model returns back generated text successfully, although it gets stuck in some weird repetitive loops. That could probably be optimized out, I think it's due to the way that the existing generated text is fed back into the model, but I'm happy with the proof of concept!
Full source code is here if you would like to play around with it, or see it for yourself.
https://redd.it/1iz1n59
@r_php
GitHub
GitHub - ankane/onnxruntime-php: Run ONNX models in PHP
Run ONNX models in PHP . Contribute to ankane/onnxruntime-php development by creating an account on GitHub.
What's the point in using a starter kit?
I'm not asking about the new starter kits, but rather just starter kits in general.
With the Laravel 12 release, we saw that Jetstream and Breeze were effectively deprecated. What's to say that 3-4 years from now, these new starters kits won't get deprecated in favor of the next new thing?
Using a starter kit to hit the ground running sounds great on paper, but I feel like it's not sustainable. I might use a starter kit for a hobby project that I'll realistically abandon at some point, but I don't think I'd ever recommend a business to use one.
Was anyone using Breeze or Jetstream for business? How are you taking the news? If you could go back in time and choose differently, would you roll your own website without a starter kit?
https://redd.it/1iz1sgg
@r_php
I'm not asking about the new starter kits, but rather just starter kits in general.
With the Laravel 12 release, we saw that Jetstream and Breeze were effectively deprecated. What's to say that 3-4 years from now, these new starters kits won't get deprecated in favor of the next new thing?
Using a starter kit to hit the ground running sounds great on paper, but I feel like it's not sustainable. I might use a starter kit for a hobby project that I'll realistically abandon at some point, but I don't think I'd ever recommend a business to use one.
Was anyone using Breeze or Jetstream for business? How are you taking the news? If you could go back in time and choose differently, would you roll your own website without a starter kit?
https://redd.it/1iz1sgg
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
PHP Impersonate is a powerful PHP package designed to mimic real browser behavior when making HTTP requests using cURL. With advanced user-agent spoofing & TLS fingerprinting
https://github.com/hamaadraza/php-impersonate
https://redd.it/1iz96to
@r_php
https://github.com/hamaadraza/php-impersonate
https://redd.it/1iz96to
@r_php
GitHub
GitHub - hamaadraza/php-impersonate: PHP Impersonate is a powerful PHP package designed to mimic real browser behavior when making…
PHP Impersonate is a powerful PHP package designed to mimic real browser behavior when making HTTP requests using cURL. With advanced user-agent spoofing, TLS fingerprinting, and header manipulatio...
Improving Filament’s Docs & Education in v4
Hey everyone! As we gear up for Filament v4, one of our big priorities is rewriting the documentation to make it clearer, more complete, and easier to navigate. At the same time, we’re planning a wider education strategy, probably including official video courses.
But we need your feedback! If you've learned Filament - whether recently or way back in v1 - what were the biggest pain points?
🔸 What parts of the docs confused you or felt incomplete?
🔸 What concepts took you the longest to understand?
🔸 What would have helped you get productive with Filament faster?
One thing we are for sure improving is the accessibility of the "utility injection" parameters you have available in each configuration function. In v4 it will be clear exactly which can be injected in each function.
Some topics might not fit perfectly in the docs, but they could be covered in video examples - so if you’ve ever thought, "I wish there was a video demonstrating a use case for X!", let us know!
We want to make sure Filament v4 is as accessible as possible, whether you're building your first admin panel or scaling a complex multi-panel app. Your feedback will directly shape the next generation of learning resources.
Drop your thoughts in the comments! We’re listening.
https://redd.it/1izdfkm
@r_php
Hey everyone! As we gear up for Filament v4, one of our big priorities is rewriting the documentation to make it clearer, more complete, and easier to navigate. At the same time, we’re planning a wider education strategy, probably including official video courses.
But we need your feedback! If you've learned Filament - whether recently or way back in v1 - what were the biggest pain points?
🔸 What parts of the docs confused you or felt incomplete?
🔸 What concepts took you the longest to understand?
🔸 What would have helped you get productive with Filament faster?
One thing we are for sure improving is the accessibility of the "utility injection" parameters you have available in each configuration function. In v4 it will be clear exactly which can be injected in each function.
Some topics might not fit perfectly in the docs, but they could be covered in video examples - so if you’ve ever thought, "I wish there was a video demonstrating a use case for X!", let us know!
We want to make sure Filament v4 is as accessible as possible, whether you're building your first admin panel or scaling a complex multi-panel app. Your feedback will directly shape the next generation of learning resources.
Drop your thoughts in the comments! We’re listening.
https://redd.it/1izdfkm
@r_php
Reddit
From the laravel community on Reddit
Explore this post and more from the laravel community
The Laravel VS Code Extension is (officially) HERE presented by Josh Cirre
Discover it in this video :
https://www.youtube.com/watch?v=4CI1zfEiImI
https://redd.it/1izdu7g
@r_php
Discover it in this video :
https://www.youtube.com/watch?v=4CI1zfEiImI
https://redd.it/1izdu7g
@r_php
YouTube
The Laravel VS Code Extension is (officially) HERE
If you're a VS Code user, then the Laravel VS Code extension is one of the first things you'll want to install as a Laravel developer. So here's 5 things that the Laravel VS Code official extension brings to you.
To install, search for "Laravel" in the VS…
To install, search for "Laravel" in the VS…
SymfonyLive Berlin 2025: Building really fast applications
https://symfony.com/blog/symfonylive-berlin-2025-building-really-fast-applications?utm_source=Symfony%20Blog%20Feed&utm_medium=feed
https://redd.it/1izgf95
@r_php
https://symfony.com/blog/symfonylive-berlin-2025-building-really-fast-applications?utm_source=Symfony%20Blog%20Feed&utm_medium=feed
https://redd.it/1izgf95
@r_php
Symfony
SymfonyLive Berlin 2025: Building really fast applications (Symfony Blog)
Build ultra-fast applications with Tobias Nyholm! Learn key strategies, quick wins, and deep optimizations to achieve response times under 15ms—without relying on Varnish!
Avoiding invalid state with guard clauses
https://www.youtube.com/watch?v=YyEqE_m7i9w
https://redd.it/1izht1i
@r_php
https://www.youtube.com/watch?v=YyEqE_m7i9w
https://redd.it/1izht1i
@r_php
YouTube
Avoiding invalid state with guard clauses
👨💻 Learn Test-Driven Development with Laravel!
https://tddwithlaravel.com
Sign up to 30 Days of Laravel 👉🏻 https://30daysoflaravel.com
👨💻 Sign up to my newsletter and receive PHP, JS and Laravel news in a weekly-basis:
https://subscribe.mateusguimaraes.com…
https://tddwithlaravel.com
Sign up to 30 Days of Laravel 👉🏻 https://30daysoflaravel.com
👨💻 Sign up to my newsletter and receive PHP, JS and Laravel news in a weekly-basis:
https://subscribe.mateusguimaraes.com…
Blasp v2 Release
Hey Laravel Devs
Last year, I created and released Blasp, a profanity filter for Laravel. To my surprise, it’s now grown to over **200 GitHub stars** and **18K downloads**—definitely not what I expected!
Shortly after launching, my wife and I welcomed our daughter into the world, so I’ve been off the grid for a bit. During that time, I received a lot of messages about **issues and feature requests**, so I decided to put together a **v2 release** to make Blasp even better!
# 🔥 What’s New in v2.0?
🚀 **Caching System for Improved Performance**
* Profanity expressions are now cached for faster repeated checks
* Added `php artisan blasp:clear` command to clear cache
⚡ **New** `configure()` **Method for Custom Lists**
* Define **custom profanity lists** and **false positive lists**
* Example usage: `$blasp = Blasp::configure( profanities: $your_custom_list, falsePositives: $your_custom_false_positives )->check($text);`
🔧 **Refactored Configuration**
* Supports **custom lists & cached expressions**
* More structured and flexible configuration options
⚙️ **Breaking Changes**
* **Removed language support** for better maintainability
* **Updated method signatures** for configuration
* **New config structure** (migration guide included)
view the full notes here [https://github.com/Blaspsoft/blasp/releases/tag/v2.0.0](https://github.com/Blaspsoft/blasp/releases/tag/v2.0.0)
Enjoy and will look forward to any feedback!
https://redd.it/1izfi8h
@r_php
Hey Laravel Devs
Last year, I created and released Blasp, a profanity filter for Laravel. To my surprise, it’s now grown to over **200 GitHub stars** and **18K downloads**—definitely not what I expected!
Shortly after launching, my wife and I welcomed our daughter into the world, so I’ve been off the grid for a bit. During that time, I received a lot of messages about **issues and feature requests**, so I decided to put together a **v2 release** to make Blasp even better!
# 🔥 What’s New in v2.0?
🚀 **Caching System for Improved Performance**
* Profanity expressions are now cached for faster repeated checks
* Added `php artisan blasp:clear` command to clear cache
⚡ **New** `configure()` **Method for Custom Lists**
* Define **custom profanity lists** and **false positive lists**
* Example usage: `$blasp = Blasp::configure( profanities: $your_custom_list, falsePositives: $your_custom_false_positives )->check($text);`
🔧 **Refactored Configuration**
* Supports **custom lists & cached expressions**
* More structured and flexible configuration options
⚙️ **Breaking Changes**
* **Removed language support** for better maintainability
* **Updated method signatures** for configuration
* **New config structure** (migration guide included)
view the full notes here [https://github.com/Blaspsoft/blasp/releases/tag/v2.0.0](https://github.com/Blaspsoft/blasp/releases/tag/v2.0.0)
Enjoy and will look forward to any feedback!
https://redd.it/1izfi8h
@r_php
GitHub
Release v2.0.0 · Blaspsoft/blasp
Version 2.0.0
Major Changes
🚀 Added caching system for improved performance
⚡ Added configure() method for custom profanity and false positive lists
🔧 Removed incomplete language support for bette...
Major Changes
🚀 Added caching system for improved performance
⚡ Added configure() method for custom profanity and false positive lists
🔧 Removed incomplete language support for bette...
What websocket solutions you use in your PHP project, and why?
Hi there, I'm curious to see what websocket solutions other devs use for their applications, and why (tradeoffs). What are your use cases?
https://redd.it/1izkuxv
@r_php
Hi there, I'm curious to see what websocket solutions other devs use for their applications, and why (tradeoffs). What are your use cases?
https://redd.it/1izkuxv
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Avoiding invalid state with guard clauses
https://www.youtube.com/watch?v=YyEqE_m7i9w
https://redd.it/1izg5ge
@r_php
https://www.youtube.com/watch?v=YyEqE_m7i9w
https://redd.it/1izg5ge
@r_php
YouTube
Avoiding invalid state with guard clauses
👨💻 Learn Test-Driven Development with Laravel!
https://tddwithlaravel.com
Sign up to 30 Days of Laravel 👉🏻 https://30daysoflaravel.com
👨💻 Sign up to my newsletter and receive PHP, JS and Laravel news in a weekly-basis:
https://subscribe.mateusguimaraes.com…
https://tddwithlaravel.com
Sign up to 30 Days of Laravel 👉🏻 https://30daysoflaravel.com
👨💻 Sign up to my newsletter and receive PHP, JS and Laravel news in a weekly-basis:
https://subscribe.mateusguimaraes.com…
From Laravel to Symfony | Day 1
Continuing my series on transitioning from Laravel to Symfony, today I’m exploring configuration, Doctrine ORM, and database migrations. If you missed the first part, you can find it here:
From Laravel to Symfony | Day 0
So, I spent time diving into Symfony’s configuration system, Doctrine ORM, and database migrations. While some things felt intuitive, others were quite a shift from my Laravel mindset. Here’s how it went:
# 1. Configuration
I have to admit—configuration in Symfony feels overwhelming at first. I’ve worked with YAML before, but not knowing all the possible parameters and options makes it a bit intimidating. Hopefully, over time, this will start to feel more natural.
One thing that caught my attention is Symfony’s use of URI-like configuration strings. It’s interesting because, on the one hand, it condenses multiple parameters into a single string. But on the other hand, packing 3, 5, or even 10 parameters into one value makes it feel dense.
Also, I’m still wondering—why is YAML the default configuration format? Symfony supports XML and PHP, but YAML seems to be the recommended approach. Maybe there's a historical reason for this choice, but personally, I find PHP-based configuration more readable and maintainable.
# 2. Doctrine ORM and Entity Manager
This will probably be the longest (and most frequent) topic in this series. Doctrine’s architecture is very different from what I’m used to, and, to be honest, it feels uncomfortable right now.
Entity Mapping: Doctrine’s approach to entity mapping via the Reflection API is intriguing. It avoids direct manipulation of objects, which adds safety. However, I’m curious if managing the required PHP attributes for entity configuration will become overwhelming. Compared to Eloquent’s "Active Record+" pattern, where models manage themselves, Doctrine seems more structured but also more verbose.
Column Naming Freedom: One small but nice benefit—Doctrine doesn’t impose restrictions on column names like Eloquent does (
Setters & Getters: I don’t love them. It feels like stepping back into the early 2000s, where this was the standard approach. With PHP 8.4 introducing asymmetric visibility, I hope defining explicit setters and getters won’t always be necessary unless additional logic is required. That said, I do appreciate how Doctrine forces explicit property definitions, making it more IDE-friendly compared to Laravel models, where attributes are often inferred.
Relations: Doctrine’s handling of relationships is super-explicit. You have to define properties, write appropriate getter/setter methods, and manage the association manually. Compared to Laravel, where a relation is just a single method, this feels like extra work. However, on the flip side, Doctrine ensures that these relations are explicitly modeled and available to the IDE as properties, rather than relying on Laravel’s "magic" attribute resolution.
PHP Attributes: I generally like PHP attributes, and they seem like a natural fit for the modern framework. But I wonder—what happens when an entity requires a large number of attributes? Will the attribute annotations eventually become more complex than the actual "classic" logic?
Working with Entities: This part feels overcomplicated. To perform basic CRUD operations, I have to juggle three different objects: Entity Manager (for persisting changes), Repository (for fetching data), and Entity (the actual object being modified). In contrast, Laravel’s "Active Record+" approach bundles everything into a single model, which feels more practical for day-to-day use.
# 3. Database Migrations
Migrations in Symfony feel different from Laravel, and honestly, I think Laravel’s approach is more intuitive.
Symfony provides a fast way to generate migration files based on entity changes, but you
Continuing my series on transitioning from Laravel to Symfony, today I’m exploring configuration, Doctrine ORM, and database migrations. If you missed the first part, you can find it here:
From Laravel to Symfony | Day 0
So, I spent time diving into Symfony’s configuration system, Doctrine ORM, and database migrations. While some things felt intuitive, others were quite a shift from my Laravel mindset. Here’s how it went:
# 1. Configuration
I have to admit—configuration in Symfony feels overwhelming at first. I’ve worked with YAML before, but not knowing all the possible parameters and options makes it a bit intimidating. Hopefully, over time, this will start to feel more natural.
One thing that caught my attention is Symfony’s use of URI-like configuration strings. It’s interesting because, on the one hand, it condenses multiple parameters into a single string. But on the other hand, packing 3, 5, or even 10 parameters into one value makes it feel dense.
Also, I’m still wondering—why is YAML the default configuration format? Symfony supports XML and PHP, but YAML seems to be the recommended approach. Maybe there's a historical reason for this choice, but personally, I find PHP-based configuration more readable and maintainable.
# 2. Doctrine ORM and Entity Manager
This will probably be the longest (and most frequent) topic in this series. Doctrine’s architecture is very different from what I’m used to, and, to be honest, it feels uncomfortable right now.
Entity Mapping: Doctrine’s approach to entity mapping via the Reflection API is intriguing. It avoids direct manipulation of objects, which adds safety. However, I’m curious if managing the required PHP attributes for entity configuration will become overwhelming. Compared to Eloquent’s "Active Record+" pattern, where models manage themselves, Doctrine seems more structured but also more verbose.
Column Naming Freedom: One small but nice benefit—Doctrine doesn’t impose restrictions on column names like Eloquent does (
$fillable, $timestamps, $table, etc.). These conflicts are rare but can be annoying when they happen.Setters & Getters: I don’t love them. It feels like stepping back into the early 2000s, where this was the standard approach. With PHP 8.4 introducing asymmetric visibility, I hope defining explicit setters and getters won’t always be necessary unless additional logic is required. That said, I do appreciate how Doctrine forces explicit property definitions, making it more IDE-friendly compared to Laravel models, where attributes are often inferred.
Relations: Doctrine’s handling of relationships is super-explicit. You have to define properties, write appropriate getter/setter methods, and manage the association manually. Compared to Laravel, where a relation is just a single method, this feels like extra work. However, on the flip side, Doctrine ensures that these relations are explicitly modeled and available to the IDE as properties, rather than relying on Laravel’s "magic" attribute resolution.
PHP Attributes: I generally like PHP attributes, and they seem like a natural fit for the modern framework. But I wonder—what happens when an entity requires a large number of attributes? Will the attribute annotations eventually become more complex than the actual "classic" logic?
Working with Entities: This part feels overcomplicated. To perform basic CRUD operations, I have to juggle three different objects: Entity Manager (for persisting changes), Repository (for fetching data), and Entity (the actual object being modified). In contrast, Laravel’s "Active Record+" approach bundles everything into a single model, which feels more practical for day-to-day use.
# 3. Database Migrations
Migrations in Symfony feel different from Laravel, and honestly, I think Laravel’s approach is more intuitive.
Symfony provides a fast way to generate migration files based on entity changes, but you
Reddit
From the symfony community on Reddit: From Laravel to Symfony | Day 0
Posted by Prestigious-Type-973 - 1 vote and 0 comments
still have to manually edit them most of the time. Laravel, on the other hand, follows a "schema-as-code" approach—each database change is defined in PHP using a structured API. This makes migrations more readable and easier to modify.
# Final Thought: "Magic" in Laravel vs. Symfony
As a Laravel developer, I’ve often heard the criticism that Laravel relies too much on "magic." But after exploring Symfony’s Doctrine ORM and Dependency Injection, I’d say Symfony has its fair share of magic too—it just uses different terminology:
Symfony’s "magic" comes from Reflection API & Autowiring.
Laravel’s "magic" comes from Facades & PHP’s Magic Methods (
So, in terms of "magical behavior," I’d say the score is 1:1. Each framework abstracts complexity in its own way, and it all comes down to preference.
That’s it for today! Next, I’ll be diving deeper into Symfony’s routing and request handling. Let me know if you have any insights or experiences with Doctrine—especially if you’ve transitioned from Laravel like I have!
https://redd.it/1izrt2g
@r_php
# Final Thought: "Magic" in Laravel vs. Symfony
As a Laravel developer, I’ve often heard the criticism that Laravel relies too much on "magic." But after exploring Symfony’s Doctrine ORM and Dependency Injection, I’d say Symfony has its fair share of magic too—it just uses different terminology:
Symfony’s "magic" comes from Reflection API & Autowiring.
Laravel’s "magic" comes from Facades & PHP’s Magic Methods (
__call, __get**)**.So, in terms of "magical behavior," I’d say the score is 1:1. Each framework abstracts complexity in its own way, and it all comes down to preference.
That’s it for today! Next, I’ll be diving deeper into Symfony’s routing and request handling. Let me know if you have any insights or experiences with Doctrine—especially if you’ve transitioned from Laravel like I have!
https://redd.it/1izrt2g
@r_php
Reddit
From the symfony community on Reddit
Explore this post and more from the symfony community
Why did you write your own framework?
I'm curious to those who have written their own framework.
1. Do you still use it?
2. What features did it have?
3. What was the advantage of your framework over a more populair option?
I have a sideproject framework, that is used in 4 production applications. It has its own HTTP client. CLI/HTTP router. Fully functional (but slow....) ORM. While project setup and troubleshooting are a breeze, the features that a (professionally) maintained framework offers is unmathed. I'm attempting a rewrite currently, hoping mainly to fix the querybuilder.
https://redd.it/1iztyci
@r_php
I'm curious to those who have written their own framework.
1. Do you still use it?
2. What features did it have?
3. What was the advantage of your framework over a more populair option?
I have a sideproject framework, that is used in 4 production applications. It has its own HTTP client. CLI/HTTP router. Fully functional (but slow....) ORM. While project setup and troubleshooting are a breeze, the features that a (professionally) maintained framework offers is unmathed. I'm attempting a rewrite currently, hoping mainly to fix the querybuilder.
https://redd.it/1iztyci
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Integrating Scramble with Cachet - the open source stability platform
https://scramble.dedoc.co/blog/integrating-scramble-with-cachet
https://redd.it/1izeicl
@r_php
https://scramble.dedoc.co/blog/integrating-scramble-with-cachet
https://redd.it/1izeicl
@r_php
scramble.dedoc.co
Integrating Scramble with Cachet - the open source stability platform - Scramble
OpenAPI (Swagger) documentation generator for Laravel. Without manual PHPDoc annotations.
Php is really good
I used a lot of language and frameworks -
Ruby on rails
Laravel
Django
But i wanted to build a website from scratch, so i will learn php now. Honestly feels very great. Most of my fav websites use php(custom framework or simple php). It feels fresh again. The best langauge to build websites from small to big. Php + go is what you need and you can build anything.
https://redd.it/1j0368s
@r_php
I used a lot of language and frameworks -
Ruby on rails
Laravel
Django
But i wanted to build a website from scratch, so i will learn php now. Honestly feels very great. Most of my fav websites use php(custom framework or simple php). It feels fresh again. The best langauge to build websites from small to big. Php + go is what you need and you can build anything.
https://redd.it/1j0368s
@r_php
Reddit
From the PHP community on Reddit
Explore this post and more from the PHP community
Shipping with Laravel
Firstly, thank you to everyone who engaged with and saw my “I want to give back” post. I spent some time dumping my brain onto words and coming up with this written post. I’m also super excited about the timing of this and what Laravel Cloud brings to the ecosystem.
I hope this post helps some of you who are trying to ship your applications—whether you’re just starting out or already deep in the trenches. While this is the first, beginner-friendly post, I’ve designed it to be useful across different skill levels and should be updated as time goes on.
Today, I’m happy to share the first look at the written post on Shipping with Laravel:
https://james.buzz/blog/shipping-with-laravel/
TL;DR: My biggest lesson; Things fail all the time. You need to spot these failures quickly and resolve them without breaking anything else.
If you have any suggestions or insights, please share them. And if you think I’ve missed anything or something could be corrected, let me know and I'll check it ASAP.
https://redd.it/1j04201
@r_php
Firstly, thank you to everyone who engaged with and saw my “I want to give back” post. I spent some time dumping my brain onto words and coming up with this written post. I’m also super excited about the timing of this and what Laravel Cloud brings to the ecosystem.
I hope this post helps some of you who are trying to ship your applications—whether you’re just starting out or already deep in the trenches. While this is the first, beginner-friendly post, I’ve designed it to be useful across different skill levels and should be updated as time goes on.
Today, I’m happy to share the first look at the written post on Shipping with Laravel:
https://james.buzz/blog/shipping-with-laravel/
TL;DR: My biggest lesson; Things fail all the time. You need to spot these failures quickly and resolve them without breaking anything else.
If you have any suggestions or insights, please share them. And if you think I’ve missed anything or something could be corrected, let me know and I'll check it ASAP.
https://redd.it/1j04201
@r_php
james.buzz
Shipping with Laravel
As developers, we need to understand what happens behind the scenes, what might break, and how to respond when it does. Whether you’re using Laravel Cloud or another hosting provider, it’s essential to know...