|
| 1 | +# 항해플러스 6기 기술블로그 요구사항 |
| 2 | + |
| 3 | +## 📋 프로젝트 개요 |
| 4 | +항해플러스 6기 수강생들의 학습 과정과 과제 제출 현황을 보여주는 기술블로그 |
| 5 | + |
| 6 | +## 🎯 필수 요구사항 |
| 7 | + |
| 8 | +### 1. 데이터 수집 |
| 9 | +- [X] PR에서 수강생 정보를 주기적으로 수집해야 한다 |
| 10 | +- [X] 수강생의 GitHub ID, 이름, 프로필 이미지를 수집해야 한다 |
| 11 | +- [X] 각 수강생이 제출한 과제 PR 정보를 수집해야 한다 |
| 12 | +- [X] PR에서 과제 회고 내용을 추출해야 한다 |
| 13 | +- [X] PR에서 배포 링크를 추출해야 한다 |
| 14 | + |
| 15 | +### 2. 메인페이지 (수강생 목록) |
| 16 | +- [X] 수강생 목록을 카드 형태로 표시해야 한다 |
| 17 | +- [X] 각 카드에는 수강생의 이름, 프로필 이미지, 제출한 과제 수가 표시되어야 한다 |
| 18 | +- [X] 수강생 카드를 클릭하면 해당 수강생의 상세페이지로 이동해야 한다 |
| 19 | + |
| 20 | +### 3. 수강생 상세페이지 |
| 21 | +- [ ] 수강생의 기본 정보(이름, GitHub 링크)를 표시해야 한다 |
| 22 | +- [ ] 해당 수강생이 제출한 과제 목록을 표시해야 한다 |
| 23 | +- [ ] 각 과제 항목에는 과제명, 제출일이 표시되어야 한다 |
| 24 | +- [ ] 과제 항목을 클릭하면 과제 상세페이지로 이동해야 한다 |
| 25 | + |
| 26 | +### 4. 과제 상세페이지 |
| 27 | +- [ ] 과제의 GitHub PR 링크를 제공해야 한다 |
| 28 | +- [ ] 과제의 배포 링크를 제공해야 한다 (있는 경우) |
| 29 | +- [ ] 수강생이 작성한 과제 회고 내용을 표시해야 한다 |
| 30 | +- [ ] GitHub Utterances를 통한 댓글 기능을 제공해야 한다 |
| 31 | + |
| 32 | +## 🚀 선택 요구사항 |
| 33 | + |
| 34 | +### 1. 랭킹 시스템 |
| 35 | +- [ ] 과제 완료율을 기준으로 한 수강생 순위를 표시할 수 있다 |
| 36 | +- [ ] BP 점수를 연동한 랭킹을 표시할 수 있다 |
| 37 | +- [ ] 배지 시스템을 통해 우수 수강생을 표시할 수 있다 |
| 38 | + |
| 39 | +### 2. 과제 관리 |
| 40 | +- [ ] 과제의 통과/미통과 상태를 표시할 수 있다 |
| 41 | +- [ ] 코치의 피드백을 표시할 수 있다 |
| 42 | +- [ ] 과제별 난이도를 표시할 수 있다 |
| 43 | + |
| 44 | +### 3. AI 기능 |
| 45 | +- [ ] 수료 시점에 수강생의 회고 내용을 분석하여 이력서용 내용을 자동 생성할 수 있다 |
| 46 | +- [ ] 과거 멘토링 기록을 기반으로 한 AI 챗봇을 제공할 수 있다 |
| 47 | +- [ ] 회고 내용을 자동으로 요약할 수 있다 |
| 48 | + |
| 49 | +### 4. 추가 기능 |
| 50 | +- [ ] 아고라 게시물을 연동하여 표시할 수 있다 |
| 51 | +- [ ] RSS 피드를 제공할 수 있다 |
| 52 | +- [ ] 새 게시물 등록 시 Discord 알림을 발송할 수 있다 |
| 53 | +- [ ] 검색 기능을 제공할 수 있다 |
| 54 | + |
| 55 | +## 🔧 기술적 제약사항 |
| 56 | +- [ ] 정적 사이트로 구현되어야 한다 (SSG) |
| 57 | +- [ ] 별도의 데이터베이스를 사용하지 않는다 |
| 58 | +- [ ] GitHub Pages를 통해 배포되어야 한다 |
| 59 | +- [ ] 기존 모노레포 구조(React + NestJS)를 활용해야 한다 |
0 commit comments