Skip to content

회사 개발팀 Meteor 적응을 위한 프로토타입 채팅 앱 만들기 프로젝트

Notifications You must be signed in to change notification settings

ko-yerin/meteor-chat-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2f3da39 · Dec 9, 2022

History

26 Commits
Dec 5, 2022
Dec 4, 2022
Dec 9, 2022
Dec 8, 2022
Dec 7, 2022
Dec 4, 2022
Dec 4, 2022
Dec 4, 2022
Dec 7, 2022
Dec 5, 2022
Dec 5, 2022
Dec 8, 2022
Dec 8, 2022
Dec 5, 2022

Repository files navigation

📌 목표

이번 프로젝트는 간단한 채팅 앱을 만드는 것으로, 다음과 같은 목표를 지향합니다.

  • 펍/섭 개념과 숙달
  • 메서드 개념과 숙달
  • 부트스트랩 숙달
  • 프로젝트 기본 구조 파악
  • 코드 교정

이번 프로젝트는 클라우드 DB에 연결되어 있는 상태 이므로, 개발간 프로젝트 실행은 meteor run이 아닌, npm run dev로 하기 바랍니다.

✅ 할 일

다음과 같은 페이지로 일반적인 채팅 앱 기능을 구현해야 합니다.

공통사항

서버와 통신간 응답을 아직 받지 않은 경우, UX를 고려한 UI 상태 변경이 필요합니다. 예를들어:

회원가입 버튼 클릭 후, 응답을 받기 전까지 인풋이나 버튼 클릭 되면 안됨.

페이지

  • 회원가입
    • 프로필 사진 업로드 기능
      스토리지 서버가 없으므로 컬렉션에 base64 포멧으로 저장
    • 일반/어드민 구분
  • 로그인
    • 아이디 기억 채크 기능
  • 로그아웃
    • 로그아웃 이후 메인 페이지로 replace (go 기능 아님)
  • 채팅방 리스트
    • 리스트 별 마지막 메세지 노출
    • 마지막 메세지는 실시간 업데이트
    • 모두가 나간 방은 리스트에서 보이면 안됨
    • 방 정렬은 마지막 메세지 수신 순서
    • 아직 읽지 않은 메시지 여부 표시
  • 채팅방
    • 메세지 입력 기능
    • 나와 타인의 메세지 좌우 분리
    • 어드민 메세지는 중앙 공지처럼 표시
    • 채팅방 나가기/뒤로가기 기능 구분 필요
    • 메세지 1회 전송에 여러 줄 입/출력 가능
    • 최근 메세지가 맨 아래 배치되도록 정렬

역할분담

역할은 대략적으로 다음과 같이 나뉩니다.

  • A: 회원가입/로그인/로그아웃/메서드(서버)
  • B: 채팅방 리스트/펍섭-룸리스트
  • C: 채팅방/펍섭-메세지

⚠️ 참고사항

  • ❗️PR은 매일 19시 이내에 등록합니다.
  • ❗️주석/커밋은 한글로 합니다.
  • 필요시 패키지 설치 가능하지만, 꼭 필요한지 한 번 더 고민해봐야 합니다.
  • 이제 조회를 제외한 모든 컬렉션은 클라이언트에서 조작할 수 없습니다.
  • 컬렉션 정보 조작은 메서드를 통해 서버에서 진행해야 합니다.
  • 컬렉션 조회는 서버에서 퍼블리케이션을 해준 정보에 한에서 가능합니다.
  • 필요시 클라이언트는 수량 제한 없이 로컬 컬렉션을 만들어 CRUD 가능합니다.
  • 금지사항에 해당하지 않는 경우, 필요에 따라서 코드 생성/수정 가능합니다.
  • Meteor 숙달에 비중을 두기위해 import/client/styles|ui 진행 안함

❌ 금지사항

다음 디렉토리 또는 파일은 수정하면 안됩니다. 수정이 필요할 경우, @Mike에게 요청해야 합니다:

  • client/
  • server/
  • imports/client/layout/
  • imports/client/styles/
  • imports/client/ui/
  • imports/routes/
  • imports/util/routeEnter.js
  • test/

그 외:

  • PR 승인된 브랜치는 삭제하고, 새로운 브랜치를 생성해서 새 작업을 시작합니다.
  • 본인에게 필요한 기능이 타인의 역할 내에 있으면, 요청으로 해결해야 합니다.
    직접 수정/조작 금지.

🗓️ 일정

  • 2022-12-05(월) - 개발 환경 설정, 시각적 구현
  • 2022-12-06(화) - 시각적 구현, 기능 개발
  • 2022-12-07(수) - 기능 개발
  • 2022-12-08(목) - 기능 개발
  • 2022-12-09(금) - 셀프 QA, 점심전까지 PR, 개인리뷰

About

회사 개발팀 Meteor 적응을 위한 프로토타입 채팅 앱 만들기 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published