메뉴 고르기 앱

카페 메뉴 추천 및 관리 애플리케이션

기간

2024.01 - 2024.03

개인 프로젝트

역할

풀스택 개발 (Next.js, MongoDB, 크롤링)

메뉴 고르기 앱

프로젝트 개요

배경

카페에서 메뉴를 고르는 데 시간이 오래 걸리는 경험을 해결하고자 시작한 프로젝트입니다. 사용자의 취향을 분석하여 메뉴를 추천하는 서비스를 만들고자 했습니다.

목표

사용자가 빠르게 원하는 메뉴를 선택할 수 있도록 돕고, 카페 메뉴 정보를 효율적으로 관리하는 것이 목표였습니다.

주요 기능

  • 카페 메뉴 정보 크롤링 및 데이터베이스 저장
  • 사용자별 선호 메뉴 선택 및 저장
  • 메뉴 추천 알고리즘
  • 관리자 페이지 (메뉴 관리)
  • 검색 및 필터링 기능

기술 스택

Next.jsTypeScriptMongoDB

기술적 챌린지 & 해결

챌린지 1

카페 메뉴 데이터 크롤링

다양한 카페 브랜드의 메뉴 정보를 자동으로 수집하기 위한 크롤링 시스템이 필요했습니다.

해결책

Puppeteer를 활용한 웹 크롤링

Puppeteer를 사용하여 주요 카페 브랜드의 메뉴 정보를 자동으로 크롤링하고, 정기적으로 업데이트하는 시스템을 구축했습니다.

챌린지 2

메뉴 추천 알고리즘

사용자의 과거 선택 이력을 기반으로 적절한 메뉴를 추천하는 로직을 설계해야 했습니다.

해결책

협업 필터링 기반 추천 시스템

사용자의 과거 선택 이력과 유사한 취향을 가진 다른 사용자들의 선택을 분석하여 메뉴를 추천하는 알고리즘을 구현했습니다.

챌린지 3

MongoDB 스키마 설계

카페, 메뉴, 사용자 정보를 효율적으로 저장하고 조회할 수 있는 NoSQL 스키마가 필요했습니다.

해결책

유연한 MongoDB 스키마 설계

카페와 메뉴를 별도의 컬렉션으로 분리하고, 사용자의 선호 정보는 embedded document로 저장하여 조회 성능을 최적화했습니다.

성과

주요 지표

개발 기간
2개월
크롤링 메뉴
200+
지원 카페
5개 브랜드

개선 사항

  • 메뉴 선택 시간 평균 70% 단축
  • 추천 알고리즘 정확도 85% 달성
  • 관리자 페이지로 메뉴 업데이트 자동화

스크린샷

프로젝트 목록으로 돌아가기