NestJS tiene una estructura de carpetas y convención de nombres muy bien definida y fácil de seguir. El uso de esta convención ayuda a mantener la coherencia y previsibilidad en tu código.
NestJS utiliza una arquitectura modular, y cada módulo de la aplicación reside en su propia carpeta. Los nombres de las carpetas generalmente son en plural y en minúsculas. Por ejemplo, si estás creando una aplicación con usuarios y tareas, tu estructura de carpetas podría ser la siguiente:
src/
users/
tasks/
Dentro de cada carpeta de módulo, puedes tener carpetas adicionales para diferentes aspectos de tu módulo, como dto
, interfaces
, decorators
, guards
, etc.
src/
users/
dto/
interfaces/
decorators/
guards/
tasks/
dto/
interfaces/
decorators/
guards/
Los nombres de los archivos en NestJS siguen una convención que incluye el tipo de archivo. Por ejemplo, los archivos de servicios terminan con .service.ts
, los archivos de controladores terminan con .controller.ts
, y así sucesivamente.
src/
users/
users.service.ts
users.controller.ts
users.module.ts
dto/
create-user.dto.ts
interfaces/
user.interface.ts
decorators/
user.decorator.ts
guards/
jwt-auth.guard.ts
tasks/
tasks.service.ts
tasks.controller.ts
tasks.module.ts
dto/
create-task.dto.ts
interfaces/
task.interface.ts
decorators/
task.decorator.ts
guards/
tasks.guard.ts
Es importante que sigas estas convenciones ya que mejora la legibilidad y el mantenimiento del código. Además, hace que sea más fácil para otros desarrolladores entender la estructura de tu proyecto.