- kebab-case for all files and folders
- Examples:
user-service.ts,auth-controller.ts,loan-repository.ts
- PascalCase for classes
- Descriptive suffix:
Service,Controller,Module,Guard,Filter - Examples:
UserService,AuthController,JwtAuthGuard
- PascalCase with optional
Iprefix for interfaces - Examples:
User,CreateLoanDto,ILoanRepository
- camelCase for variables and functions
- Examples:
getUserById,loanAmount,isValidSignature
- UPPER_SNAKE_CASE for constants
- Examples:
MAX_LOAN_AMOUNT,DEFAULT_INTEREST_RATE
- Module name in PascalCase with
Modulesuffix - Folder in kebab-case
- Example:
src/modules/auth/→AuthModule
- PascalCase with
Dtosuffix - Request:
CreateLoanDto,UpdateUserDto - Response:
LoanResponseDto,UserResponseDto
- PascalCase with
Guardsuffix - Example:
JwtAuthGuard,WalletSignatureGuard
- PascalCase with
Filtersuffix - Example:
HttpExceptionFilter,ValidationExceptionFilter