Why Don't We Have A Laravel For JavaScript?

preview_player
Показать описание
I've thought a lot about this. I get asked it a lot. "Why does JavaScript not have an equivalent of Ruby on Rails, Laravel, or Django?"

S/O Ph4se0n3 for the awesome edit 🙏
Рекомендации по теме
Комментарии
Автор

I made a mistake. I referred to Ukraine as "The Ukraine", not knowing this phrasing was meant to refer to Ukraine as part of Russia. I fully support Ukraine's right to independence.

It's not much, but I donated another $1000 to Ukraine's efforts to stay independent 🫡

tdotgg
Автор

My 2c - people in javascript seem to be terrified of being opinionated. Every framework has to work with every library. Everything needs adapters. Everything needs "options" that must be decided first. What I want is a no bullshit framework that just has everything I need to start adding value from day 0, and has the longevity and backing to maintain LTS.

OpinionatedSkink
Автор

Having a solid stable framework like Rails, Laravel or Django is not equivalent to having 100 bits and pieces of sort of frameworks maintained by a small group. A web framework must solve a consumer problem. The client wants an ERP system, if I'm a ruby dev I know it's Rails what's needed. If I'm a php dev I know it's Symphony I need. If the client wants a basic CRM or a CMS I know I will need Laravel or Django. The frameworks I mentioned are stable, reliable, well maintained, has support and focused innovation. I don't think a js dev can make a decision like that simply based on the consumer requiement. Having too much to choose from is not always a good thing

devOnHoliday
Автор

I understand these points but we should acknowledge that the the Javascript Fatigue is a real thing. I am working with javascript/React for years now and I love learning new stuff but needing to relearn things each 3 years and build apps differently is really tiring. Not keeping up has a career cost! Knowing how things are built and being able to discuss it is part of the job interview.
And new projects that are in general more interesting will start using the latest way of doing things. So if you want to join those projects you have to keep up.

I do agree, the beauty of the JS ecosystem is this ease to build things and innovate, but it's also what make it hard to keep up with

donaminos
Автор

AdonisJS is for me the Laravel of Javascript. And it is actually inspired by Laravel

kevin.raimbaud
Автор

Laravel with Inertia/React is by far the fastest way I've found to build a full stack app.

Tommmmmm
Автор

The fragmentation of the JS ecosystem and the sheer amount of third party libraries is why it’s bad without even going into the quirks of the language itself.

It’s not okay to have dependency trees that go into thousands.

I would much rather use a language where the community understands that third party dependencies are to be used sparingly.

tranquility
Автор

I'm a massive, massive fan of Laravel with Inertia and React.

I also love Laravel's grammar and the fact that it gives you pretty much everything you need in an API or service, NPM is fantastic but it's much easier to get into dependency hell.

zebraforceone
Автор

I don't share the view that only JS allows you to make a "customised framework" using only what you want from existing packages. Laravel is also a giant collection of components that we can use individually to create our application infrastructure. You only have to look at the vendor folder created with a new Laravel project to see that there is everything you need to create your solution.

The main problem, for me, is that if there is no common solution adopted by the market, it will be more complex for those entering the universe of a company that has chosen a set of solutions for which I only know how to use half of them, because in my projects I used other types of solutions for the same purpose. When a company is looking for a programmer with experience in Laravel, anyone who knows how to use Laravel is immediately ready to fill that position.

JLDRPT
Автор

As someone who started doing vanilla PHP, then Laravel, and now does Javascript (i.e. NestJS), I disagree with this video.

Having a fully fledged framework like Laravel available is incomparable. Laravel is amazing and if my workplace and much of the world wasnt focusing on Javascript based approaches, I'd still prefer to stick with Laravel. The developer experience is unbelievably good compared to JS.

Let's take auth (login and also permissions). In JS, you need to pick the auth framework(s), integrate them with the rest of the application manually, and usually, put some fairly considerable thought into how it works with the rest of your app. In Laravel, I would literally just install the relevant package, and boom, functionality is in - and easy to use as well with little to no thought. (Take the spatie laravel-permission addon for example). Let's also take database event auditing as another example. There is literally an addon you can just install for that. And boom, audit events are logged - including who did it. In Javascript approaches, again, there is no equivalent.

I will say that there is a lot of flexibility that comes with the way the JS ecosystem works, but we absolutely miss out on all these amazing plug-and-play tools that come from the stability of something like laravel. The amount of times i've thought 'we should have a NestJS starter kit with DB + auth + etc at my work' is too many times. Meanwhile with laravel you just HAVE that 'baseline application logic' ready to go (and plug in a few addons while you're there).

overwatch_is_hard
Автор

Adonis is probably closest to Laravel for JS (TS), and it's excellent. I use Adonis whenever Next + Vercel doesn't make sense. APIs to glue various systems together, puppeteer & pdf templating, CRON jobs too big to be severless, etc. The ORM is great, the templating engine is decent, and support for everything from redis to s3 to mail is baked in and works flawlessly. Beyond that, it can be quite modular. IMO, it's also the best option out there if you want fullstack TS HTMX.

nargyle
Автор

Inertiajs not mentioned at all for some reason.
Also :
20$ for hosting
20$ for auth
20$ for database
20$ for queues
20$ for mail
20$ for rate limiting

Yeah nextjs ecosystem is a PERFECT solution to own and control nothing. It is a maintenance dream sprinkled with some good old premature optimisation.

skapator
Автор

Honestly, it ALWAYS boils down to priorities.

If you need ultra high speed parallel stuff. Maybe JS or PHP are not the best language. GO may be an option.

If you're a one man start-up and you need a shit load of things, maybe you don't want to integrate 500 different parties and integrate everything yourself - then choosing PHP with laravel ist a perfectly fine decision.

If you need to move kinda fast in a team and want easy re-hiring, Typescript is perfect for the job.

It just should always boil down to a set of priorities.

Chrrs
Автор

Did you really say "no other languages has so much full stack solutions" ?

Omg. PHP alone has 5 very good fullstack solutions along those 2 are the most solid and very known Laravel et Symfony, that 99.99% of the photo devs have heard about.

The 3 others being YII, Codeigniter and CakePHP for people who have a bit more experience.

In the JS world I doubt even 20% of people know about the 3 your just mentioned.

So before making those kind of bold statement, please do some research.

In the JS world there is no fullstack clear winner because the JS ecosystem is way more too prone to hype than other ecosystems.

Having mainly alternatives or options can be good but in the JS world we've passed the "options" phase, there's just too much stuff.

mikorimakori
Автор

PHP is simply better. JS is running in circles around pretending it's moving faster.

bartech
Автор

Nuxt is kind of closest to Laravel in JS.

A lot of primitives, a lot of modules from core maintainers.

You can do almost anything out of the box, without spending time to deal with incompatible libraries.

evan_ry
Автор

i feel ashamed when i remember express requires another package just to use json in body, GOD help me

othman_
Автор

A certain part of this is a bad info - the mentioned ecosystems definitely have their fair share of smaller frameworks. PHP ecosystem is especially rich, from Symfony, to ReactPHP to whatever was the name of that static one that used to be the fastest ttfb in the world. Also, most of these, if not all, existed during and before the Angular era, whereas Theo mentions only Rails. Don't let me start on Java. And it is super duper common to play around with the runtime models, much more common than in the JS world (although that is changing). I think that is where the answer lies - all of these had 10-15 years more to develop, and all of them have more freedom to fool around with the execution model, JS ecosystem is fragmented and often can't pick a lane. This can be good, as we end up with a lot of products and components that are industry leading, but its bad side is that it often feels like our job isn't coding and delivering, but instead figuring out how pieces work together and which pieces to pick.

MrManafon
Автор

Theo do you just not acknowledge vue? Anytime where I'm expecting vue to be mentioned its not, but svelte or solid is.

double-agent-ly
Автор

You're correct but remember, the all in one frameworks are the best thing for new developers. It makes it easier to quickly learn the important things quickly and later refine them with experience.

santiagohal