opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

AdonisJS: a fullstack MVC framework for Node.js focused on ergonomics and speed

AdonisJS: a fullstack MVC framework for Node.js focused on ergonomics and speed

GitHub RepoImpressions539

Project Description

View on GitHub

AdonisJS: The Fullstack Node.js Framework That Actually Feels Good to Use

If you've been building fullstack apps with Node.js for a while, you've probably tripped over the same frustrations: too much boilerplate, awkward file structures, or framework choices that feel more like constraints than tools. AdonisJS is trying to fix that.

It's a fullstack MVC framework for Node.js that puts developer ergonomics first. Think Laravel or Ruby on Rails, but for Node. It's opinionated in the right ways, gives you a clean mental model, and it's fast enough that you won't feel like you're trading performance for developer happiness.

What It Does

AdonisJS is a batteries included framework for building fullstack web applications. It comes with:

  • A built in HTTP router and middleware system
  • An ORM (Lucene) for database interactions (supports SQL databases like PostgreSQL, MySQL, and SQLite)
  • Authentication and session management out of the box
  • Template engine (Edge) for server side rendering
  • CLI tools for scaffolding apps and generating resources
  • Real time WebSocket support via Adonis Repl

In short: it gives you everything you need to build a production ready web app without spending days wiring up third party packages.

Why It’s Cool

Here’s what sets AdonisJS apart from the usual Express or Fastify setups:

No more "boilerplate anxiety"
AdonisJS has a clear convention for folder structure, routing, and controllers. You don't spend time deciding where to put things. The framework does that for you, and it's smart about it.

Type safe by default
The entire framework is written in TypeScript and exposes type safe APIs. You get autocomplete, refactoring support, and fewer runtime errors without needing to add TypeScript separately.

Great developer experience
The ace CLI tool is genuinely pleasant to use. Generating a model, controller, or migration feels snappy. The error handling is clear and actionable. There's no "where did that error come from?" hunting.

Built for modern Node
AdonisJS uses async/await natively, supports modern JavaScript features, and integrates well with tools like Docker, PM2, and environment variable management. You're not fighting against the framework to make it work with modern infrastructure.

Opinionated but not rigid
Yes, it follows MVC. But you can still add custom middlewares, use any template engine you want, or swap out parts. It’s opinionated enough to guide you, but flexible enough to not get in your way.

How to Try It

Getting started is straightforward. You need Node.js 18+ and npm (or pnpm).

Install AdonisJS globally and create a new project:

npm init adonisjs@latest my-app
cd my-app
node ace serve --watch

That's it. You'll get a fresh AdonisJS app running on http://localhost:3333. From there, you can generate your first model:

node ace make:model User

Or create a controller:

node ace make:controller Home

For a more complete example, check the official documentation or the GitHub repository for samples and real world projects.

Final Thoughts

AdonisJS isn't trying to be everything to everyone. It's a focused framework for developers who want to build fullstack apps without the "let me just add one more middleware" spiral. If you've been burned by glueing together too many Express packages, or you miss the structure of Rails but want to stay in Node, this is worth a serious look.

It’s not the newest kid on the block, but it’s mature, well documented, and the community is active. I'd happily reach for this for a new SaaS app or internal tool.


@githubprojects

Back to Projects
Project ID: f5a0a491-f77e-4560-86ae-e3b4a096f22fLast updated: June 26, 2026 at 04:03 AM