◼️ 목적
현재 냉장고에 남아있는 재료를 활용하여 요리할 수 있는 레시피를 발견할 수 있고, 다양한 레시피를 요리 종류별로 확인할 수 있는 서비스를 제공합니다.
이를 통해 음식물 쓰레기와 배달음식을 줄이며 일회용 포장용기 사용을 최소화하여 환경을 보호하는 의식을 함께 실천하고자 합니다. 또한 창의적인 레시피를 직접 등록하고 북마크하여 나만의 레시피북을 간직할 수 있습니다.
◼️ 목표
- 나의 냉장고에 식재료를 등록하면, 해당 식재료를 기반으로 만든 레시피를 검색할 수 있습니다.
- 사용자들이 직접 요리 과정과 재료, 사진을 포함한 레시피를 업로드하여 북마크하고 공유할 수 있는 기능을 제공합니다.
- 가장 많은 북마크를 보유한 유저에게 마스터셰프라는 역할을 부여하고 해당 유저의 레시피들을 확인할 수 있습니다.
화면 | 설명 |
---|---|
나의 냉장고 | 식재료(조회, 추가, 수정, 삭제), 유통기한(수정), 식재료 전체 삭제 |
레시피 목록 | 레시피 목록(조회), 요리 종류별 필터링, 인기/최신 필터링 |
레시피 상세 | 레시피 상세(조회), 좋아요 |
레시피 작성/수정 | 요리 대표 이미지, 이름, 양, 종류, 식재료 목록(이름/중량), 과정 목록 |
홈 | 인기 레시피 목록(조회), 마스터셰프 목록(조회) |
로그인 | 일반 로그인 |
회원가입 | 일반 회원가입, nodemailer 이메일 인증 |
마이페이지 | 프로필 이미지 및 계정 정보 관리(수정), 회원 탈퇴(삭제), 작성한 레시피 목록(조회), 좋아요한 레시피 목록(조회), 비밀번호로 본인 확인 |
다음은 프로젝트를 로컬로 설정하는 방법에 대한 지침을 제공하는 예시입니다. 로컬 복사본을 실행하려면 다음의 간단한 예시 단계를 따라주세요.
-
실행에 필요한 환경을 미리 준비합니다.
- 프론트엔드
- AWS S3 버킷 (버킷 리전)
- AWS IAM 사용자 - 보안 자격 증명 액세스 키
- 백엔드
- JWT 시크릿 키
nodemailer
이메일 인증에 필요한 메일 계정 (네이버)- MongoDB URI
- 프론트엔드
-
리포지토리를 Clone합니다.
// 프론트엔드 git clone https://github.com/helloleesul/our-home-michelin.git // 백엔드 git clone https://github.com/helloleesul/our-home-michelin-BE.git
-
NPM 패키지를 설치합니다.
npm install
-
최상위 경로에
.env
파일을 생성해 환경 변수를 작성합니다.// 프론트엔드 폴더 REACT_APP_API_URL = "http://localhost:3000" REACT_APP_REGION = "XXXXXXXXXX" REACT_APP_ACCESS_KEY_ID = "XXXXXXXXXX" REACT_APP_SECRET_ACCESS_KEY = "XXXXXXXXXX"
// 백엔드 폴더 PORT = 3001 JWT_SECRET = "XXXXXXXXXX" EMAIL_USER = "[email protected]" EMAIL_PASSWORD = "XXXXXXXXXX" MONGODB = "mongodb+srv://XXX:XXX@XXX" ORIGIN = "http://localhost:3000"
아이디 | 비밀번호 |
---|---|
[email protected] | test123! |
- 왼쪽 하단의 냉장고 버튼🗄️을 눌러 내 냉장고 재료를 확인합니다.
- 추가할 재료가 필요하다면 하단 오른쪽에 '냉장고 재료 담기' 버튼을 클릭하거나 재료를 직접 작성해 추가합니다.
- 재료의 유통기한 날짜를 클릭하면 유통기한을 수정할 수 있습니다.
- 이미 유통기한이 지난 재료들은 따로 분류해 보여줍니다.
- '냉장고 재료 담기' 버튼을 클릭하면 미리 제공된 식재료를 선택해 추가할 수 있습니다.
- 회원 사용자는 레시피를 직접 작성하거나 수정, 삭제할 수 있습니다.
- 레시피 메뉴에서 모든 레시피를 요리 종류별로 확인할 수 있습니다.
- 오른쪽 상단의 '냉장고 재료'를 클릭해 현재 내 냉장고 재료가 포함된 레시피만 확인할 수 있게 필터링합니다.
- 또는 어떤 경로에서든 내 냉장고에서 '레시피 찾기'를 클릭하면 같은 기능을 사용할 수 있습니다.
기여는 오픈 소스 커뮤니티를 배우고, 영감을 얻고, 창조할 수 있는 놀라운 공간으로 만들어 줍니다.
더 나은 방향으로 개선할 수 있는 제안이 있다면 리포지토리를 Fork하고 Pull Request를 만들어 주세요. enhancement(개선)
태그를 사용하여 이슈를 열 수도 있습니다.
모든 기여에 진심으로 감사드립니다.
- 프로젝트를 Fork합니다.
- 새로운 기능 브랜치를 만듭니다. (
git checkout -b feature/AmazingFeature
) - 변경한 코드를 커밋합니다. (
git commit -m 'Add some AmazingFeature'
) - 브랜치를 Push합니다. (
git push origin feature/AmazingFeature
) - 새로운 Pull Request를 생성합니다.