개인적으로 Boiler Plate가 무엇인지 모르는 상태에서 시작하기에, 이에 대한 학습을 진행하고 작성해야겠다는 생각이 들었다.


보일러 플레이트


디렉토리 구조

src
|───config
  |─logger
  |─type_orm
  |─multer
  |─JWT
|───jwt
  |─interface
    |─jwt.interface.ts
  |─guard
    |─jwt.guard.ts
|───auth
  |─entity
    |─token.ts
  |─repository
    |─token.repository.ts
  |─service
    |─token.service.ts
  |─controller
    |─token.controller.ts
  |─dto
    |─token.interface.ts
  |─exception
    |─token.exception.ts
|───member
  |─entity
    |─member.ts
  |─repository
    |─member.repository.ts
  |─service
    |─member.service.ts
  |─controller
    |─member.controller.ts
  |─dto
    |─member.interface.ts
  |─exception
    |─member.exception.ts
|───question
  |─entity
    |─question.ts
  |─repository
    |─question.repository.ts
  |─service
    |─question.service.ts
  |─controller
    |─question.controller.ts
  |─dto
    |─question.interface.ts
  |─exception
    |─question.exception.ts
|───answer
  |─entity
    |─answer.ts
  |─repository
    |─answer.repository.ts
  |─service
    |─answer.service.ts
  |─controller
    |─answer.controller.ts
  |─dto
    |─answer.interface.ts
  |─exception
    |─answer.exception.ts
|───video
  |─entity
    |─video.ts
  |─repository
    |─video.repository.ts
  |─service
    |─video.service.ts
  |─controller
    |─video.controller.ts
  |─dto
    |─video.interface.ts
  |─exception
    |─video.exception.ts
|─app.controller.spec.ts
|─app.controller.ts
|─app.module.ts
|─app.service.ts
└─ main.ts

필요 기술 정리

※ 동영상 압축에 사용할 라이브러리 선정 필요

※ 로깅 및 사용 통계에 대해서는 local file에 저장하거나, Redis를 추가할 예정