A progressive Node.js framework for building efficient and scalable server-side applications.
프로젝트 기간 : 2023-02-27(월) ~ 2023-03-31(금)
📖 Workerbecn 홈페이지 (데스크탑 환경에서 이용해 주세요)
* 위 경로로 접속이 불가능 할 시 Workerbecn 홈페이지 (www)
📖 Workerbecn 홈페이지 - 관리자 페이지 (데스크탑 환경에서 이용해 주세요)
* 위 경로로 접속이 불가능 할 시 Workerbecn 홈페이지 - 관리자 페이지(www)
* 관리자 페이지 접속 시에는 아래의 '브로셔' 를 참조해주세요.
- 코로나19로 인해 재택근무가 활성화된 요즘, 워크숍 트렌드도 변화하고 있습니다.
- 술자리와 회식이 전부인 워크샵은 옛말, 비대면 워크숍부터 취미 활동을 함께 하는 등 워크숍의 의미가 달라지고 있습니다.
- 워커 벤치는 건강한 워크숍 문화를 만들고 싶은 기업과 직장인, 그리고 워크숍 콘텐츠 제공자를 이어주는 플랫폼입니다.
📚 팀 노션 | 🧩 프로젝트 S.A | 📝 주차별 노트 | 💾 프로젝트 ERD | 💬 브로셔 | 🖍️ 베타 테스트 결과 |
---|
이름 | 역할 | 깃 허브 주소 | 담당 업무 현황 |
---|---|---|---|
김민수 | 리더 | https://github.com/msdou46 | BackEnd : 로그인, 회원가입 등 인증/검증 관련 API, AWS S3 등 AWS 서비스 관련 세팅 FrontEnd : 프론트 ejs 파일 서버 사이드 랜더링 시 유저 로그인 유무 판별 로직 작성, 프론트 측 access token 발급 요청 코드 작성 |
고호성 | 팀원 | https://github.com/alestorm001 | BackEnd : 유저 마이 페이지 API. 유저의 워크샵 수강 현황 리스트, 찜 목록 API FrontEnd : 유저 마이 페이지 디자인 - 기본 틀 및 네비게이션 버튼 구조 짜기 |
이동호 | 팀원 | https://github.com/ehdgh6239 | BackEnd : 강사 페이지 전체 API FrontEnd : 강사등록하기,워크샵등록,워크샵목록,강사 업체 등록,강사 업체정보,강사 수강 관리(미완료),강사 수강 관리 (완료) |
한동주 | 부리더 | https://github.com/handongjoo | BackEnd : 관리자 페이지 전체 API FrontEnd : 관리자 페이지 전체 , 마이 페이지 (나의 워크샵 목록 / 강사 및 업체 정보 / 리뷰 작성) |
황민주 | 팀원 | https://github.com/minzunim | BackEnd : 인기/신규 워크샵 조회, 검색, 수강 신청, 결제/환불, 찜 API FrontEnd : 메인, 검색, 워크샵 상세, 수강 신청, 마이 페이지 내 워크샵 목록 |
🔍자세한 사항은 기술 멘토링 노트 2주차 와 브로셔 에 기록되어 있습니다.
사용 기술 | 용도 |
---|---|
Node.js(v18.12.0) | JavaScript 런타임 환경 |
NestJs(^9.0.0) | 확장 가능한 애플리케이션 구축을 위한 Node.js 웹 프레임워크 |
Typescript(^4.7.4) | JavaScript의 슈퍼셋 |
TypeORM(^0.3.12) | TypeScript로 작성된 Object Relational Mapper 라이브러리 |
MySQL(^8.0.31) | SQL을 기반으로 한 관계형 데이터베이스 관리 시스템(RDBMS) |
Ejs(^3.1.8) | JavaScript로 HTML 마크업을 생성할 수 있는 템플릿 언어 |
redis(^3.0.504) | in-memory 기반 비관계형 데이터 베이스 관리 시스템 |
📦WORKERBENCHPROJECT
┣ 📂public
┣ 📂src
┃ ┣ 📂admin
┃ ┣ 📂auth
┃ ┣ 📂common
┃ ┣ 📂config
┃ ┣ 📂database
┃ ┣ 📂entities
┃ ┣ 📂mypage
┃ ┣ 📂teacher
┃ ┣ 📂workshops
┃ ┣ 📜app.controller.spec.ts
┃ ┣ 📜app.controller.ts
┃ ┣ 📜app.module.ts
┃ ┣ 📜app.render.controller.ts
┃ ┣ 📜app.service.ts
┃ ┣ 📜main.ts
┣ 📂test
┣ 📂views
┣ 📂lambda_image_resize
┣ 📂lambda_video_hls
┣ 📜.env(서버 한정)
┣ 📜.eslintrc.js
┣ 📜.prettierrc
┣ 📜dataSource.ts
┣ 📜nest-cli.json
┣ 📜package-lock.json
┣ 📜package.json
┣ 📜README.md
┣ 📜tsconfig.build.json
┗ 📜tsconfig.json
public
: css, js 파일 등 정적 파일src
: nestJs 프로젝트를 구성하는 모듈들의 집합. 추후 build 되어 root 폴더에 'dist' 폴더로 트랜스파일 됨.test
: e2e 테스트 파일view
: 서버 사이드 랜더링용 ejs 파일lambda_image_resize
: AWS Lambda 함수에서 사용된 이미지 리사이징 코드. 프로젝트 내부에서는 사용되지 않음lambda_video_hls
: AWS Lambda 함수에서 사용된 영상 컨버팅 코드. 프로젝트 내부에서는 사용되지 않음
- 로그인, 회원가입, 그 밖에 JWT 등 인증/검증 관련 기능을 수행합니다.
- 가장 인기 있는 워크샵, 신규 워크샵, 워크샵 검색 기능 등을 제공합니다.
- 계정을 소유한 유저의 워크샵 수강 이력, 찜 목록 등을 보여줍니다.
- 강사로 등록된 유저가 나의 워크샵을 관리, 등록 신청 할 수 있으며 유저의 수강 신청 이력도 조회 가능합니다.
- 강사가 등록 신청한 워크샵을 승인/반려 하거나 블랙 리스트를 추가하는 등의 권한을 가집니다.