Skip to content

wanted-quantum-jump/FoodieFinder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

FoodieFinder - 지리기반 맛집 추천 웹 서비스


Redis Amazon EC2 Amazon RDS

FoodieFinder는 공공데이터를 활용하여, 지역 음식점 목록을 자동으로 업데이트 하고 이를 활용합니다. 사용자 위치 에맞게 맛집 및 메뉴를 추천하여 더 나은 다양한 음식 경험을 제공하고, 음식을 좋아하는 사람들 간의 소통과 공유를 촉진하려 합니다.

☄️ Team Q members

김서윤 방성원 장혜리 정지원
@seoyoon047 @O0oO0Oo @hyerijang @cjw9506

0. 목차

1. 개발 기간

2023.10.31 ~ 2023.11.08 (9 days)

2. 프로젝트 요구사항

🍣지리기반 맛집 추천 웹 서비스 요구사항

유저스토리

  • 유저는 본 사이트에 들어와 회원가입 및 내 위치를 지정한다.
  • A. 내 위치 기반 맛집추천 = (내 주변보기)
    • 도보 기준 1km 이내의 맛집을 추천한다.
    • 교통수단 기준 5km 이내의 맛집을 추천한다.
  • B. 지역명 기준 맛집추천(특정 지역 보기)
    • 지정한 지명(시군구) 중심위치 기준 10km 이내의 맛집을 추천한다.
  • C. 점심 추천 서비스
    • 점심 추천 서비스 이용을 승락한 대상에게 매일 정오, 대상의 위치를 기준으로 원하는 유형(일식, 중식 등)의 가게를 3개씩 추천 해준다.
  • A, B는 다양한 검색기준 (정렬, 필터링 등)으로 조회 가능하며 (거리순, 평점순 , 양식, 중식)
  • 해당 맛집의 상세정보를 확인할 수 있다.

3. 담당 역할

김서윤 시군구, 맛집 목록, 맛집 상세정보, 평가 API 구현
방성원 데이터 수집, 데이터 전처리, 자동화 구현 및 Redis 캐싱
장혜리 데이터 전처리, 데이터 저장, 점심 추천 서비스 구현
정지원 사용자 관련 서비스 및 인증, 인가 구현

4. 프로젝트 구조

자세히

main

├─main
│  ├─java
│  │  └─com
│  │      └─foodiefinder
│  │          ├─auth
│  │          │  ├─config
│  │          │  ├─controller
│  │          │  ├─dto
│  │          │  ├─filter
│  │          │  ├─jwt
│  │          │  └─service
│  │          ├─cities
│  │          │  ├─controller
│  │          │  │  └─response
│  │          │  ├─domain
│  │          │  ├─factory
│  │          │  └─service
│  │          ├─common
|  |          |  ├─cache
│  │          │  ├─config
│  │          │  ├─dto
│  │          │  ├─entity
|  |          |  ├─enums
│  │          │  └─exception
│  │          ├─datapipeline
|  |          |  ├─cache
│  │          │  ├─config
│  │          │  ├─enums
│  │          │  ├─job
│  │          │  ├─processor
│  │          │  │  └─dto
│  │          │  ├─reader
│  │          │  ├─step
│  │          │  ├─util
|  |          |  |  ├─hash
|  |          |  |  └─request
│  │          │  └─writer
│  │          │      ├─entity
│  │          │      └─repository
│  │          ├─notification
│  │          │  ├─dto
│  │          │  ├─scheduler
│  │          │  └─service
|  |          ├─restaurants
|  |          |  ├─cache
|  |          |  ├─controller
|  |          |  ├─dto
|  |          |  ├─entity
|  |          |  ├─enums
|  |          |  └─service
│  │          ├─settings
│  │          │  ├─controller
│  │          │  ├─dto
│  │          │  ├─entity
│  │          │  ├─repository
│  │          │  ├─service
│  │          │  └─valid
│  │          └─user
│  │              ├─controller
│  │              ├─crypto
│  │              ├─dto
│  │              ├─entity
│  │              ├─repository
│  │              └─service
│  └─resources

test

│─test
├─java
│  └─com
│      └─foodiefinder
│          ├─auth
│          │  ├─controller
│          │  └─service
│          ├─cities
│          ├─config
│          ├─datapipeline
│          │  ├─processor
│          │  ├─reader
│          │  ├─step
│          │  └─writer
│          │      └─repository
│          ├─notification
│          │  └─service
│          ├─settings
│          │  ├─controller
│          │  ├─service
│          │  └─valid
│          └─user
│              ├─controller
│              └─service
└─resources

5. ERD

자세히

6. 동작예시

RDS

디스코드 점심 추천 서비스 예시

7. API Document

최신 문서는 FoodieFinder API Document를 참조해 주세요.

8. 프로젝트 스케줄링

image

image

9. 협업 규칙

Branch Strategy

  • main, develop, feature로 나누어서 진행
  • feature이슈번호-기능_이름 으로 명명

Commit Convention

# 타입 : 제목 형식으로 작성하며 제목은 최대 50글자 정도로만 입력
# 제목을 아랫줄에 작성, 제목 끝에 마침표 금지, 무엇을 했는지 명확하게 작성

################
# 본문(추가 설명)을 아랫줄에 작성

################
# 꼬릿말(footer)을 아랫줄에 작성 (관련된 이슈 번호 등 추가)

################
# feat : 기능 추가
# fix : 버그 수정
# docs : 문서 수정
# test : 테스트 코드 추가
# refactor : 코드 리팩토링
# style : 코드 의미에 영향을 주지 않는 변경사항
# chore : 빌드 부분 혹은 패키지 매니저 수정사항
# cicd : CI/CD 관련 설정
################

기타 규칙은 Team Q Notion - 팀 규칙 및 컨벤션을 참조해 주세요.

About

지리기반 맛집 추천 웹 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •  

Languages