I'm really enjoying AdonisJS. My new preferred full-stack framework

Wren said:
@Payne
I am totally into SvelteKit. Can you give me a short overview of what could be a game changer for me switching to Adonis? I appreciate.

What anamexis said in sibling comment, plus an interactive REPL, validation, console commands/scripts, email sending, notifications, authorization, permissions, file uploads, great security by default (CSRF, etc), translations, and many more things.

The best part is that all of this is well integrated together. And that allows external ‘packages’ providing extra functionality that also integrate well to be possible, such as admin panels, background workers, etc.

@Payne
You mind telling more why Adonis is good and the difference to frameworks like Next.js?

Nile said:
@Payne
You mind telling more why Adonis is good and the difference to frameworks like Next.js?

It’s not even a comparison.

Adonis is a richly featured full-stack framework. It has an ORM built-in. It has authentication built-in. Authorization and permissioning features. Dependency injection. Eventing. Integration testing. Route grouping with connected middleware. Caching. Validation. Templating. Serialization. Internationalization. Migration. Emailing and messaging. File system integrations. All built-in or first-party add-ons.

Next.js has a single middleware function and server pages.

@Blaire
Sounds interesting. Why is Next.js so popular then and I for example hear the first time about Adonis?

Nile said:
@Blaire
Sounds interesting. Why is Next.js so popular then and I for example hear the first time about Adonis?

Insane marketing in the past couple of years from parties such as Vercel/Netlify and even YouTubers to appeal to a certain demographic of developers. This new wave of developers who don’t know anything other than Next.js are gonna be in for a big surprise when they start applying for jobs. I honestly can’t wrap my head around why Next.js became so popular and didn’t die out with the first major breaking changes.

Nile said:
@Payne
You mind telling more why Adonis is good and the difference to frameworks like Next.js?

Go and check their docs. You will see all the things that it provides out of the box.

Adonis is THE fullstack, batteries included backend framework for the node ecosystem, nothing comes close.

And this opinion comes from someone who has used (and loves) Laravel, Rails, Django, Phoenix, .NET, Spring Boot.

AdonisJs is what the node ecosystem needs as the standard framework. I love it.

@Blakeley
Is TypeScript a must? Can plain JS be used in Adonis?

Flint said:
@Blakeley
Is TypeScript a must? Can plain JS be used in Adonis?

TypeScript is a must on Adonis, but it is not that scary to use if you come from a JS background. It helps a lot that Adonis has all the types you may require for your application.

@Blakeley
I just find TS to be annoying in terms of DX compared to a language with native types. Kinda half-assed if you will.

Flint said:
@Blakeley
I just find TS to be annoying in terms of DX compared to a language with native types. Kinda half-assed if you will.

Yeah… I guess you have a point, coming from C#/Java I feel that TS is just fine but not great. Also, I enjoy writing JavaScript; I don’t think it is that bad tbh hahaha.

@Blakeley
Nest + front is badly better for several reasons. Who still uses monolith these days?

I don’t have skin in the game, but I thought this is what Redwood Js was trying to achieve and it’s been around a good few years.

Any idea how these differ?

Vale said:
I don’t have skin in the game, but I thought this is what Redwood Js was trying to achieve and it’s been around a good few years.

Any idea how these differ?

Redwood is better if you’re building a fullstack application that is only meant to serve a single frontend. Adonis is more backend focused and leaves frontend choices pretty open for the developer.

Vale said:
I don’t have skin in the game, but I thought this is what Redwood Js was trying to achieve and it’s been around a good few years.

Any idea how these differ?

Don’t know how they differ but Adonis isn’t new, been around since 2016ish.

Vale said:
I don’t have skin in the game, but I thought this is what Redwood Js was trying to achieve and it’s been around a good few years.

Any idea how these differ?

Just look at Redwood docs and compare them to Adonis ones (or Laravel ones). It definitely looks to me like a framework made by frontend developers or by people that have never used Rails/Laravel/Django.

Example 1: The validations section has no mention on how to do validation on the backend…

Example 2: The authentication section is a mess of ‘pick among these 10 random services/SaaS and pay for it’… or write a ‘custom’ one. Compare that with how Adonis or Laravel handles that.

Example 3: There’s no mention on how to do translations. There’s some mention about yarn setup i18n in a ‘command line’ section… whatever that is… looks messy. Just search how to do translations in Adonis or Laravel…

Example 5: Interactive REPL… nope?

Example 6: Database… just outsourced to Prisma (as it seems to do with many other things). Compare that to Adonis (or Laravel), how you can do migrations, write Models, etc. This is such a core part like to outsource it to a VC backed startup.

Example 7: Permissions? Authorization… maybe some package? Nothing shows up when searching.

I could spend all day like this…

I mean… I’m not surprised it didn’t take off.

@Payne
It’s admittedly been 3-4 years since I tried it out, but this very much matches the experience I had with RedwoodJS. It feels less like Rails and more like a stack of 3rd party tools with an opinionated structure and codegen to fit that structure.

@Corey
I feel like this has become the de facto way of development for non-enterprise projects, sadly… just connect a bunch of third-party services together and call it full-stack.

Vale said:
I don’t have skin in the game, but I thought this is what Redwood Js was trying to achieve and it’s been around a good few years.

Any idea how these differ?

Redwood doesn’t come even close IMHO.

And wait until you discover pre-adonis.