1. 준비

(1) 프로젝트 클론

front_3rd_chapter3-2.git 저장소를 fork한 다음에 clone 하여 작업해주세요.

# fork한 저장소를 clone한 다음에
$ git clone <https://github.com/><GITHUB_ID>/front_3rd_chapter3-2.git
$ cd front_3rd_chapter3

# 원본 저장소를 한 번 pull 받아주세요.
$ git pull <https://github.com/hanghae-plus/front_3rd_chapter3-2.git> main

⚠️ 만약 7주차 Advanced 과제를 성공적으로 진행했다면, 해당 코드를 그대로 복사 붙여넣기해서 사용하셔도 괜찮습니다. 현재 시작점은 이전 과제를 마치지 못한 분들을 위한 시작점입니다.

(2) 패키지 설치

# 먼저 pnpm을 설치합니다.
$ npm install -g pnpm

# 그 다음에 pnpm으로 패키지를 설치합니다.
$ pnpm install

(3) 테스트 코드 및 어플리케이션 실행

# 테스트 코드 실행
pnpm test

# 어플리케이션 실행
pnpm dev

2. 목표

<aside> 💡 TDD(테스트 주도 개발) 방식을 활용하여 기존 일정 관리 애플리케이션에 새로운 기능을 점진적으로 추가하는 과정을 통해, 실제 프로젝트에서 마주할 수 있는 복잡한 요구사항을 테스트 우선으로 구현하는 능력을 기릅니다.

</aside>

(1) 요구사항 추가

1) 기본 요구사항

<aside> 💡 현재 App.tsx는 7주차 과제의 요구사항이 그대로 적용된 상태입니다.

</aside>

  1. 일정을 생성, 조회, 수정, 삭제할 수 있어야 한다. 이를 통해 내 일정을 효과적으로 관리할 수 있다.
  2. 일정의 제목, 날짜, 시작 시간, 종료 시간, 설명, 위치를 지정할 수 있어야 한다. 이를 통해 각 일정에 대한 상세 정보를 기록하고 확인할 수 있다.
  3. 주별 또는 월별로 일정을 볼 수 있어야 한다. 이를 통해 특정 기간의 일정을 한눈에 파악할 수 있다.
  4. 일정에 태그나 카테고리를 지정할 수 있어야 한다. 이를 통해 일정을 체계적으로 구분하고 관리할 수 있다.
  5. 일정에 대한 알림을 설정할 수 있어야 한다. 이를 통해 중요한 일정을 잊지 않고 준비할 수 있다.