Skip to content

내가 가지고 있는 재료로 레시피를 검색하고 나만의 레시피를 작성 및 업로드하며 다른 사람의 레시피에 좋아요와 북마크를 할 수 있는 공유 플랫폼

Notifications You must be signed in to change notification settings

leunbin/yamspoon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

demo example

0. Quick Start

0.1 공통

git clone https://github.com/leunbin/yamspoon.git
cd 2step

0.2 Backend

cd ../backend
npm install
npm start

Environment Variables

프로젝트를 실행하기 위해 아래 환경 변수를 .env 파일에 설정해야합니다.
(각 값을 실제 환경에 맞게 설정해주세요.)

필수

MONGODB_URI : MongoDB 연결 문자열

JWT_SECRET : JWT 토큰 서명 키

권장/기본값이 있는 항목

NODE_ENV : 실행 환경 (development/production)

APPLICATION_NAME : 애플리케이션 이름

PORT : 서버 포트 (예: 3000)

세션

SESSION_SECRET : 세션 쿠키 서명 키

SESSION_RESAVE : 세션 재저장 여부 (true/false)

SESSION_SAVE_UNINITIALIZED : 초기화되지 않은 세션 저장

SESSION_STORE_URL : 세션 저장소 URL 

기타

COOKIE_MAX_AGE : 쿠키 만료(ms)

MAIL_ID / MAIL_PASSWORD : 메일 송신 계정 사용 시

S3_KEY / S3_SECRET : S3 업로드를 사용할 때 필요

0.3 Frontend

cd ../frontend
npm install
npm start

1. Project Overview

  • 내가 가진 재료를 이용해 레시피를 검색
  • 키워드로 레시피 자체를 검색
  • 사용자가 레시피를 작성하고 이미지 업로드 가능
  • 다른 사용자의 레시피에 좋아요/저장(북마크) 기능 제공
  • 직관적이고 간결한 UI로, 최소 클릭으로 레시피 탐색 및 저장 가능

2. Team Members

구분 (Role) 이름
🖥️ Frontend (Client) 양혜지
강경림
김송이
임채리

구분 (Role) 이름 역할/담당 기능
⚙️ Backend (Server) 이은빈 로그인
회원가입
탈퇴
마이페이지
북마크
아이디/비밀번호 찾기
아이디/닉네임 유효성 검증
메일 인증
한새환 레시피 생성
레시피 수정
레시피 조회
레시피 삭제
좋아요 수 처리

3. Tech Stack

🖥️ Frontend

React SCSS Figma

⚙️ Backend

Node.js Express MongoDB Swagger AWS S3

💻 Language

JavaScript

4. 주요 기능

👤 회원

  • 회원가입 (비밀번호 확인), 로그인/로그아웃 (JWT 인증)

  • 마이페이지

    • 닉네임/프로필 이미지 수정
    • 나의 레시피/좋아요/저장 목록 조회
  • 비밀번호 해싱 저장, 인증/인가 미들웨어

🍳 레시피

  • 레시피 작성/수정/삭제/조회 (제목, 설명, 준비물, 조리 단계, 태그)

  • 이미지 업로드(여러 장 가능)

    • 업로드 시 서버에서 리사이즈/포맷 표준화
  • 작성자만 수정/삭제 가능(권한 체크)

🧺 재료 기반 검색

  • 사용자가 보유 재료를 등록

  • 보유 재료로 만들 수 있는 레시피 추천/필터 (포함/제외 재료 필터)

  • 텍스트 검색(제목/설명/태그)과 조합 검색 지원

💟 좋아요 & 🔖 저장

  • 레시피 좋아요/취소, 저장/취소(북마크) 기능

  • 마이페이지에서 내가 좋아요/저장한 레시피 리스트 관리

🔍 검색

  • 텍스트 검색: 제목/설명/태그에 대한 전역 검색

  • 정렬/필터: 최신순, 좋아요순, 난이도/조리시간/태그 필터(옵션)

⚙️ 기타

  • Swagger로 API 문서화

  • CORS 설정

  • 입력값 검증(서버/클라이언트), 에러 처리(AppError)

  • 이미지 저장: s3-multer + MongoDB(GridFS)

About

내가 가지고 있는 재료로 레시피를 검색하고 나만의 레시피를 작성 및 업로드하며 다른 사람의 레시피에 좋아요와 북마크를 할 수 있는 공유 플랫폼

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published