우리42벤트 (4인팀) 프로젝트 소개
슬랙에 마구잡이로 올라오는 42 이벤트들을 한 눈에 볼 수 있는 캘린더 웹서비스
Github 레포지토리 : github.com/innovationacademy-kr/our42vent
대상 : 42 Seoul 커뮤니티
개발 기간 : 2022.01. ~ 2022.02.
0 서비스 배포
배포 기간 : 2022.02 ~ 2022.12

1 기술 스택

2 목적
현재 42 서울 이벤트들은 슬랙 random 채널을 통해 공지. 이러한 커뮤니케이션 방식에서 아래와 같은 문제 발견:
- 글이 쌓여서 필요한 정보를 못 보는 사람들이 생긴다.
- 관심있는 이벤트의 일정을 개인적으로 저장해야 한다.
- 인트라의 agenda 캘린더는 공식 이벤트 정보만 볼 수 있고, 사용이 불편하다.
- 학생들은 인트라 캘린더에 이벤트를 등록할 수 없다.
42의 모든 구성원들이 이벤트를 등록할 수 있고, 이벤트들을 한눈에 볼 수 있는 캘린더 웹사이트 구현.
3 기능
👤 로그인
- 42 API OAuth 로 일차 인증 후, access token & refresh token 발급하여 사용자를 인증합니다.
✅ 이벤트 일정 확인
- 캘린더 뷰에서 다양한 42 이벤트들의 일정을 확인할 수 있습니다.
- 이벤트들은 종류별 카테고리로 분류되어 있고, 각 카테고리에 해당하는 이벤트들만 선택하여 볼 수 있습니다.
✨ 이벤트 생성
- 특강, 외부 컨퍼런스, 개인이 여는 이벤트등을 캘린더 이벤트로 생성할 수 있습니다.
- 본인이 생성한 이벤트 정보를 수정하거나 삭제할 수 있습니다.
🔔 이벤트 구독
- 이벤트를 구독하여 나만의 캘린더로 관리할 수 있습니다.
- 알림설정을 통하여 브라우저 알림을 (ServiceWorker API & WebPush API) 받을 수 있습니다.
📣 이벤트 홍보
- 이벤트 생성 후 자동으로 홍보글이 만들어져서 손쉽게 홍보할 수 있습니다.
4 아키텍쳐
- AWS lightsail 인스턴스.
- NGINX 로 HTTPS 설정 및 reverse proxy.
- Express application server.
- MariaDB.
- Redis Cache Storage.
5 역할 및 기여
기여도
- 커밋 : 46% (139/300 commits without merges)
- 이슈 : 46% (59/127 assigned issues)
- PR : 38% (33/86 merged PRs)
역할
- 캘린더 CSR view & API 구현
- Service Worker API & Push API 로 사용자가 등록한 이벤트 push 알림 기능 & 알림 설정 UX 구현
- 공공데이터포탈 Open API 로 공휴일 데이터 요청 & 표시
- ejs 로 여러 view 에서 공통으로 활용되는 SSR layout 설정