HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 3기 교육생
/
🙂
동근팀
/
UnsungHero Project
UnsungHero Project
UnsungHero Project
UnsungHero Project

UnsungHero Project

0. 프로젝트 기획서 개요

  1. 서비스 주제
  1. 서비스 소개
  1. 기술 스펙
  1. 프로젝트 구조 및 환경
  1. UnsungHero 개발 문화
  1. 개발 일정

1. 서비스 주제

1.1 서비스 대상: 아버지
1.2 서비스명: 언성 히어로 (unsung hero)
  • 의미: ‘용기 있는 행동, 자기희생적 행동을 하여 훌륭한 업적을 달성했지만 유명하거나 알려지지 않은 사람’을 뜻하는 합성어
1.3 프로젝트 테마 컨셉: 베트맨 (존재를 숨기는 영웅)
notion image
1.4 서비스 개요: 가장의 무게를 견디며 가정을 지키는 작은 영웅, 우리의 아버지. 누구에게도 쉽게 털어놓지 못한 작은 영웅들의 대화의 장 ‘언성 히어로’..
1.5 서비스 배경: 많은 고민을 안고 살아가지만 누구에게도 쉽게 고민을 털어놓지 못하는 아버지들을 위한 자유로운 소통, 상담 그리고 위로받는 공간을 만들기 위해 기획
1.6 서비스 목적: 자녀가 있는 아버지들의 털어놓기 어려운 고민을 서로 편하게 공유하며 도움과 위로를 받을 수 있고 아버지라는 책임에서 벗어나 본인 스스로를 되돌아 볼 수 있는 시간을 갖을 수 있음
  • 기대 효과: 아버지들의 정서적 안정과 행복을 통한 가정의 평화와 행복

2. 서비스 소개

2.1 주요기능
  • 회원가입 및 로그인
    • 사용자는 회원가입과 로그인 가능
    • 토큰 저장 Local storage (cookie, Session storage를 활용한 refresh token은 추후 고려 사항)
  • 포스트
    • 작성
      • 인증된 사용자는 채널에 익명 게시글 작성 가능
      • 게시글 템플릿 생성
      • 게시글 투표 기능(추후 고려 사항)
    • 읽기
      • 사용자는 채널에 올라온 일부 글 보기 가능
      • 인증된 사용자는 채널에 올라온 전체 글 보기 가능
      • 채널: 육아 / 재테크 / 잡담 / 직장 / 부부관계 / 취미 / 친구 등
  • 댓글
    • 인증된 사용자는 포스트 댓글 작성 가능
    • 인증된 사용자는 특정 포스트에 작성한 댓글 삭제 가능
  • 공감 버튼
    • 인증된 사용자는 포스트의 공감 버튼 클릭 가능
    • 최다 공감 게시글 일부 목록 상단에 일정 기간 노출
  • 알림 기능
    • 인증된 사용자는 자신의 알림 목록 확인 가능
  • 마이페이지
    • 인증된 사용자는 본인의 개인 정보 변경 가능
      • 닉네임 수정
      • 프로필 & 커버 이미지 수정
      • 비밀번호 수정
    • 본인이 업로드한 게시글 목록 보기
    • 본인이 받은 공감 개수 총 합 보기
  • 검색
    • 사용자는 포스트 검색 가능
    • 게시글 상세 검색 기능 및 검색어 하이라이팅 기능
  • 와이어 프레임과 User Story

3. 프로젝트 구조 및 환경

3.1 기술 스택
const 기술스택 = { 언어: ['typeScript'], 라이브러리: ['react','reactRouter','react-icons/ai'], 디자인: ['styledComponents'], 포메터: ['eslint', 'prettier'] 통신: ['axios'], 상태관리: ['contextApi'], 패키지: ['yarn'], 배포: ['netlify' || ..?] // 추후 선택 예정 }
3.2 프로젝트 구조
###기능별 분류 public L index.html L manifest.json src L alarm (알람과 관련된 모든 파일이 들어감) L auth (로그인, 인증 관련.) L comment (댓글 기능관련) L post (작성된 글 관련) L search (검색 기능관련) L styles (프로젝트 전체적인 스타일) L user (사용자 본인에 대한 기능들) App.tsx Router.tsx (라우터 설정) index.tsx

4. 프로젝트 역할 분배

4.1 프로젝트 역할
  • PM: 안재관 일정 관리 및 발표 자료 준비 등
  • 디자인 관리: 유지영 회의 내용을 토대로 와이어프레임 제작(2-3장)
  • Github 관리: 박민형 소스코드, 코드 리뷰, 브랜치 관리등 전체적인 코드 관리(PR 템플릿 자동화 설정 등)
  • 문서화: 우대현 README, 개발 문서, 회의 내용 정리
  • 프로젝트 초기 설정: 조예지 번들러 및 트랜스파일러, 폴더 구조, ESLint 및 Prettier 설정 등
 
4.2 기능별 역할 분배
  • 회원가입, 로그인: 박민형
  • 검색 및 보기: 우대현
  • 사용자 정보 CRUD: 유지영
  • 포스트 CRUD: 안재관
  • 좋아요 및 댓글 CRUD: 조예지
  • 알림: 박민형

5. UnsungHero 개발 문화

5.1 commit convention
  • Angular JS commit convention 사용
  • commit emoji 사용
    • 참고 사이트.
    • [협업] 협업을 위한 git 커밋컨벤션 설정하기
      들어가며 어떻게 하면 협업을 더 잘할 수 있을까 고민하며 협업에 필요한 내용들을 계속 정리하고 있습니다. 앞으로 저와 함께 협업하는 팀원분들에게 도움이 되고 싶습니다. 이 글은 Udacity Git Commit Message Style Guide를 주로 참고하여 작성했습니다. 세부적인 내용은 프로젝트에 맞춰 수정할 수 있습니다.
      [협업] 협업을 위한 git 커밋컨벤션 설정하기
      https://overcome-the-limits.tistory.com/entry/%ED%98%91%EC%97%85-%ED%98%91%EC%97%85%EC%9D%84-%EC%9C%84%ED%95%9C-%EA%B8%B0%EB%B3%B8%EC%A0%81%EC%9D%B8-git-%EC%BB%A4%EB%B0%8B%EC%BB%A8%EB%B2%A4%EC%85%98-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
      [협업] 협업을 위한 git 커밋컨벤션 설정하기
5.2 코드 리뷰 및 반영
  • Approve 2인 → PR → Merge
  • PR 템플릿을 통해 일관성 있는 PR을 작성
  • 템플릿 예시
## 📘 작업 유형 - 신규 기능 추가 - 스타일 속성 변경 <br/> ## 📑 작업리스트 > 작업한 목록 - 주문하기 페이지 생성 <br /> ## 🚧 특이 사항 > PR을 읽을 때 살펴볼 사항
5.3 branch 관리
  • Main branch - Dev branch - Feature branch로 구분
  • Feature branch에서 Dev branch로의 PR 및 merge는 5.2 코드 리뷰 및 반영 규칙을 따름
  • Develop branch에서 Main branch로의 merge는 github 관리 담당 박민형 님이 확인 후 진행
notion image
5.4 회고
  • 회고에 대한 일정한 규칙을 정함
##회고 목적 1. 프로젝트를 진행하며 겪었던 어려움을 공유하고 어떻게 해결했는지를 기록으로 남기기 위함 ##회고 규칙 1. 개인별 1일 회고를 작성 2. 수단과 목적의 전도현상을 방지하기 위해 1일 회고는 짧고 간략하게 작성 3. 주 1회 그 동안의 1일 회고를 토대로 내용 공유
5.5 기술 공유
  • 프로젝트 관련 기술 공유
    • 프로젝트 관련 기술 스택 중 프로젝트를 진행하면서 새롭게 알게 된 정보를 주 1회 공유
5.6 분위기
  • 프로젝트 진행 중 궁금한 점이 생기면 discord와 팀 slack을 통해 언제든지 자유롭게 질문하고, 모두가 공유해야 하는 내용은 팀 slack을 통해 질문☺️
  • 혼자 고민은 30분을 넘기지 않기🥹
  • 상대방의 의견을 경청하기😁

6. 개발 일정

 
notion image