DNN [Platform] is great for organizations of any size who wish to have a robust CMS to manage their site. DNN is not ideal for a small site that is better suited to a super easy to user interface such as Wix. DNN [Platform] is plenty strong enough for enterprises and large entities.
Laravel is ideally suited for fluent PHP developers who want a framework that can be used to both rapidly prototype web applications as well as support scalable, enterprise-level solutions. I think where it is less ideal is where the client has an expectation of using a certain CMS, or of having a certain experience on the admin side that would perhaps be better suited to a full CMS such as Drupal or WordPress. Additionally, for developers who don't want to write PHP code, Laravel may not be the best solution.
Very easy to use CMS - Ease of use is paramount with CMS products to minimise on support calls. Also the template structure of pages ensures that content editors cannot inadvertently corrupt the layout of the page.
Powerful application framework - The existence of APIs for all functionality within the CMS provides limitless scope in terms of developing bespoke applications which sit within the CMS.
Commercially supported option available - For larger clients, the comfort factor of having a direct line to the developers of the application is a big selling point.
Significant learning curve. You cannot be an expert in a week. It takes many experimentations to properly understand the underlying concept. We ourselves learned it by using it on the job.
Too much to soak in. Laravel is in everything. Any part of backend development you wish to do, Laravel has a way to do that. It is great, but also overwhelming at the same time.
Vendor lock in. Once you are in Laravel, it would not be easy to switch to something else.
Laracasts (their online video tutorials) are paid :( I understand the logic behind it, but I secretly wish it would be free.
The eloquent ORM is not my recommendation. Let's say you want to write a join, and based on the result you wish to create two objects. If you use Laravel to do automatic joins for you, Laravel internally actually makes two calls to database and creates your two object rather than making one join call and figuring out the results. This makes your queries slow. For this reason, I use everything except eloquent from Laravel. I rather write my own native queries and control the creation of objects then rely on Laravel to do it. But I am sure with time Laravel will make fewer calls to DB.
My experience with Joomla! was over six years ago so a lot could have changed. However, I prefer DNN over Joomla because DNN offers more modules and a better administration user interface.
Supporting unit testing is bigger plus point in Laravel than any other framework. Developing with Laravel is much easier. Other frameworks have value in market, but Laravel has taken the lead in popularity among PHP developers in recent years. The large community supports you if you have problems. Using Laravel, integration became easy with third-party libraries, but it was costly too.
DNN helps us win bids on projects through the improvements the community has done over the past few years; we were ready to scrap it all together but it has made great strides
DNN's community has come back and is actively working to improve and expand the capabilities of the cms
on a negative note, the confusion between evoq and dnn has caused us headaches
Laravel allows us to rapidly prototype and build complete, scalable applications internally, which saves us time and allows us to have internal tools that fit out precise needs. We use Symfony for a similar purpose, but Laravel is an even higher-level framework that we find saves us substantially more time when building many types of web applications.
Laravel solves many of the underlying concerns of building a large application (such as authentication, authorization, secure input handling) in the right ways. It saves us from handling those low-level concerns ourselves, potentially in a way that could take a lot of time or sets us up for issues in the future. It's tough to assign an ROI to this, but I'm sure it has prevented issues and saved time, which both have an impact on our financial situation.