4th addition to Fa'Diel with Nest.js
January 30, 2025
This is the continuation of the Fa'Diel project. The original had three interchangeable backends: Laravel, Go (Gin), Express.js, all of them consumed by a single Vue.js admin. This time, I'm adding a fourth backend using Nest.js + TypeScript, keeping the same contract so the admin still works without changes.
The project: 4th Fa'Diel -Nest.js + TypeScript
This was created to add a fourth interchangeable API to Fa'Diel, built with:
- Nest.js - modular Node.js framework with decorators and Dependency Injection
- ValidationPipe - automatic request validation
- Passport.js - JWT auth via @nestjs/passport
- TypeORM - database ORM
- that matches the same interchangeable contract as the original Laravel, Go, and Express.js APIs
Advantages:
- Modular architecture - modules, controllers, services, providers instead of flat routes
- Guards replace Express middleware - declarative auth via @UseGuards() decorator
- TypeScript + DTO validation catches payload mismatches at compile time
- Still fully interchangeable with the existing Vue.js admin
The repository can be accessed below:
Repository