Overview
AdonisJS describes itself as the batteries-included TypeScript framework. A new app comes with routing, controllers, middleware, and official packages for authentication, the Lucid ORM, validation, mail, queues, cache, rate limiting, file uploads and testing, all built to fit together and documented in one place.
Lucid is an active-record ORM on top of Knex with relationships, a fluent query builder, migrations, seeders and factories. Validation uses VineJS, which the project says is about twice as fast as Zod, supports async rules, can check uniqueness against the database and validate file uploads, with error messages from i18n files.
Routes live in a central file and resolve to lazily loaded controllers, one per resource, a structure familiar to Laravel and Rails developers. Apps can render server-side views or serve an API for a separate front end.
AdonisJS is maintained by an independent core team and funded by companies that sponsor it monthly; it has no commercial cloud or paid tier, and the homepage says those sponsors keep it independent.
Pricing and plans
What it does
- Lucid ORM
- Active-record models with relationships, query builder, migrations, seeders and factories on Knex.
- VineJS validation
- Fast schema validation with database rules and file upload checks.
- Authentication
- Session-based and token auth as official packages.
- Mail, queues and cache
- First-party packages for sending mail, background jobs and caching.
- Rate limiting and uploads
- Built-in rate limiter and file upload handling.
- Testing
- Testing tools are part of the framework.
Strengths and limitations
Strengths
- Full-stack conventions and first-party packages in TypeScript
- One set of docs for ORM, auth, validation and more
- Independent and sponsor-funded, not tied to a hosting vendor
- Familiar to developers coming from Laravel or Rails
Limitations
- Node.js only; not aimed at edge runtimes
- Smaller community and third-party ecosystem than Express or NestJS
- Opinionated conventions make swapping core pieces (such as the ORM) harder than in minimal frameworks
- Funding depends on sponsorships rather than a company or foundation
Who it suits
Good for
- Full-stack TypeScript web apps and SaaS products
- Developers who want Laravel-style productivity in Node
- Small teams that prefer conventions
Look elsewhere if
- Edge functions or tiny microservices
- Teams that want to hand-pick every library
Alternatives to AdonisJS
| Tool | From | Free option | Stages |
|---|---|---|---|
| ASP.NET Core .NET web framework | — | ||
| Echo Go HTTP web framework | — | ||
| Fastify High-performance Node.js web framework | — | ||
| Encore Backend framework with infrastructure from code | $49/mo | Free tier | |
| Ruby on Rails Full-stack Ruby web framework | — | ||
| Litestar Python ASGI API framework | — |
Questions
Is AdonisJS like Laravel?
Yes, in approach: it bundles routing, ORM, auth, validation, mail and queues with conventions, but in TypeScript on Node.
What ORM does AdonisJS use?
Its own Lucid ORM, an active-record ORM built on Knex.
Is AdonisJS free?
Yes. It is MIT licensed and funded by sponsors.
Can AdonisJS serve a React or Vue front end?
Yes. It can act as an API for a separate front end or render views itself.
Sources read for this page