요구사항 정의서 Ver 1.0 - JunilHwang/dkusw-log GitHub Wiki

1. 개요

1) 소개

  • 단국대학교 소프트웨어학과의 커뮤니케이션 활성화를 위하여 웹 사이트를 구축한다.

2) 핵심기능

  • SNS 로그인
  • GitHub 연동을 통한 프로젝트 진행
  • {과목, 교수, 취업, 공모전, 개발} 등의 정보 공유

3) 사용기술

  • Single Page Application
  • React.js + Mobx
  • Server Side Rendering
  • Nest.js
  • WebView

2. 주요기능

1) 로그인 및 회원가입

  • 수집정보 : Name, Email, Profile Image, NickName, access token
  • SNS 연동
    • Google OAuth 2.0
    • GitHub OAuth 2.0
  • Native
    • JSON Web Token을 이용

2) 메인페이지

  • 최근 포스트
  • 공지사항
  • 핫 포스트
  • 프로젝트 목록

3) 포스트 작성 및 수정 ( 회원만 가능 )

  • 마크다운 문법사용
  • {에디터, 에티더 + 미리보기, 미리보기} 형태로 조회 가능
  • Ajax를 이용한 Image 및 File Upload
  • 포스트 및 작성자 태그 기능
  • 임시저장 및 불러오기
  • 태그

4) 포스트 조회 ( 누구나 가능 )

  • 제목 퀵 메뉴
  • 좋아요, 좋아요 취소
  • 페이스북 공유, 링크 공유
  • 스크랩
  • 회원의 경우 댓글을 작성할 수 있음
  • 작성자의 경우 포스트를 수정/삭제 할 수 있음
  • 포스트 신고 기능 ( 누적 5회시 게시물 차단 )
  • 관련 포스트 목록
  • 작성자의 포스트 목록

5) 댓글 ( 회원만 가능 )

  • 댓글 작성/수정/삭제
  • 댓글의 답글
  • 댓글 신고

6) 마이페이지 ( 회원만 가능 )

  • 기본 정보
    • 프로필 이미지
    • 아이디
    • 이름
    • 간단한 소개
  • 프로필 정보 수정
    • 이메일
    • 소셜정보(GitHub, Facebook, Homepage)
    • 회원 탈퇴
  • 작성한 글
  • 내 활동(댓글, 태그, 참조 등)
  • 상세한 소개