<p align="center">
<a href="http://nestjs.com/" target="blank"><img src="https://nestjs.com/img/logo-small.svg" width="120" alt="Nest Logo" /></a>
</p>
현재 상태 (Current status)
진행 중 (Work in progress) - 프리 알파 단계!!! 지난 며칠 동안 매우 효과적이었습니다. 자세히 살펴보겠습니다:
엔터프라이즈급 IAM 모듈이 생성되었습니다. JWT 신원 및 접근 관리 모듈을 사용하여 완전히 구축되었으며, 라우트를 보호하는 가드(guards), 사용자 및 역할 데코레이터(user and roles decorators), 리프레시 토큰(refresh tokens), REDIS를 사용한 토큰 무효화, 그리고 역할 기반 접근 제어(Role-Based Access Control) 기능을 제공합니다. 향후 DLC에는 다음이 포함될 예정입니다:
3월에 수행된 추가 작업:
클래식 REST API 대신, 언더페칭(under-fetching)이나 오버페칭(over-fetching)과 같은 문제가 있었습니다. GraphQL은 또한 강력한 타입 시스템을 가지고 있어 애플리케이션에 또 다른 이점을 제공합니다.
GraphQL을 사용하면 필요하지 않습니다.
매끄럽게 잘 되었습니다 (Smooth AF).
설명 (Description)
PlanWEAR(약속 관리 및 일정 정리)를 위한 Rest API 애플리케이션이며, Nest 프레임워크로 구축되었습니다.
배포 (Deployment)
AWS에서 NestJS 애플리케이션을 배포하는 공식 플랫폼인 Mau를 확인해 보세요.
데이터베이스 구조 (Database Structure)
진행 중 (Work in progress) - 아직 최종 단계가 아니며, 매일 밤 수정이 이루어지고 있습니다!!! 다이어그램은 현재 엔티티 모델을 정확하게 나타내지 않을 수 있습니다.
PostgreSQL Database Structure
프로젝트 그래프 [모듈] (Project Graph [Modules])
Modules Graph
외부 서비스 (External services)
PlanWEAR 애플리케이션은 SMS 제공업체로 Twilio 외부 통신 API를 사용할 것입니다. 다음 환경 변수가 필요합니다:
- TWILIO_ACCOUNT_SID
- TWILIO_AUTH_TOKEN
지금 당장 Twilio 계정을 등록하고 싶지 않다면, src/app.module.ts 파일의 다음 코드 블록을 제거하거나 주석 처리할 수 있습니다:
TwilioModule.forRootAsync({
useFactory: (configService: ConfigService) => ({
accountSid: configService.get('TWILIO_ACCOUNT_SID'),
...
중요: Twilio 자격 증명(credentials)은 현재 당장 필요하지는 않지만, 가까운 미래에 필수적일 것입니다.
엔티티 (Entities)
마이그레이션 (Migrations)
아직 설정되지 않았으며, 작업 진행 중입니다. TypeORM의 동기화(synchronize) 옵션은 true로 설정되어 있습니다. 이는 개발 모드에서만 사용해야 하며, 프로덕션 환경에는 적합하지 않습니다!!!
설치 (Installation)
Docker
연락처 유지 (Stay in touch)
작성자 - lukasz [dot] skowron [at] gmail.com