HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
CheQuiz 프로젝트
CheQuiz 프로젝트
/
[Epic] 메인 페이지 (1)

[Epic] 메인 페이지 (1)

Feat

  • 메인 페이지 UI 디자인
  • 메인페이지 랜덤퀴즈 및 퀴즈세트 API 연동
  • 메인페이지 필터 및 정렬 기능 추가

요구사항

일일 퀘스트를 통해, 카테고리와 문제수를 입력하고, 퀴즈풀이를 시작할 수 있다.
지식사냥터에서, 존재하는 퀴즈 세트를 모두 확인할 수 있다.
퀴즈세트는 [제목, 평균난이도, 태그s. 설명, 좋아요개수, 유저 이미지, 유저닉네임] 을 포함한다.
지식사냥터의 퀴즈 세트들을 [유저닉네임, 제목, 태그]를 통해 검색할 수 있다.
지식사냥터의 퀴즈 세트들을 [좋아요순, 최신순] 으로 정렬 할 수 있다.
개발
  • ContextAPI를 통해, 현재 퀘스트 수행타입의 값을 관리한다.
    • state: null | random | quizSet
      • 퀴즈풀이 페이지 이동할 때, state값을 업데이트 한다.
  • 사용할 API List
    • get/channels
      • Channel[]
      • 지식사냥터 퀴즈세트 출력
      • get/posts/channel/{channelName}
        • Post[]
        • 평균 난이도 도출에 사용
          • 이슈 퀴즈생성 시, custom 속성넘기기 vs 메인페이지에서 구해서 넘기기
          • 메인페이지에서 구할 때
            • Post[].reduce( (acc,cur) ⇒ acc + Post.title.difficulty ) / Post[].length 의 버림
         

    1. 메인 페이지 UI 디자인