{"id":15204148,"url":"https://github.com/yoohyunji/dalkak","last_synced_at":"2026-01-02T23:57:33.591Z","repository":{"id":241710738,"uuid":"807453149","full_name":"YooHyunJi/DALKAK","owner":"YooHyunJi","description":"빅데이터 기반 사용자 맞춤 칵테일 추천 웹 사이트","archived":false,"fork":false,"pushed_at":"2024-05-22T13:48:20.000Z","size":100005,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-23T18:50:22.484Z","etag":null,"topics":["elk","fastapi","jwt","kafka","nextjs","nextjs14","oauth","pandas","scss","three-js","zustand"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YooHyunJi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-29T06:15:07.000Z","updated_at":"2024-05-29T06:24:38.000Z","dependencies_parsed_at":"2024-05-29T20:15:02.985Z","dependency_job_id":null,"html_url":"https://github.com/YooHyunJi/DALKAK","commit_stats":null,"previous_names":["yoohyunji/dalkak"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YooHyunJi%2FDALKAK","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YooHyunJi%2FDALKAK/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YooHyunJi%2FDALKAK/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YooHyunJi%2FDALKAK/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YooHyunJi","download_url":"https://codeload.github.com/YooHyunJi/DALKAK/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244006290,"owners_count":20382443,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["elk","fastapi","jwt","kafka","nextjs","nextjs14","oauth","pandas","scss","three-js","zustand"],"created_at":"2024-09-28T05:22:31.304Z","updated_at":"2026-01-02T23:57:33.549Z","avatar_url":"https://github.com/YooHyunJi.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🤵달칵 : Dalkak🍹\n\n### 🍸홈텐딩 :\n\n\u003cstrong\u003e\n    홈과 바텐딩의 합성어로 코로나 시대 이후 수요가 점차 늘어나며 하나의 문화로 자리매김했습니다.\n\u003c/strong\u003e\n\n#### :heavy_check_mark: 항상 같은 칵테일을 마시는 게 지겨우신가요?\n\n#### :heavy_check_mark: 다른 사람들은 어떤 칵테일을 좋아하는지, 최근 어떤 칵테일이 가장 핫한지 궁금하신가요?\n\n#### :heavy_check_mark: 집에서 간단히 칵테일을 만들고 싶은데, 가지고 있는 재료로 어떤 칵테일을 만들 수 있는지 알고 싶으신가요?\n\n#### :heavy_check_mark: 자신이 어떤 성향이며 자신에게 딱 맞는 칵테일이 무엇인지 추천받고 싶으신가요?\n\n### ✨그런 여러분들을 위한 [달칵](https://dalkak.store) 서비스를 준비했습니다!✨\n\n\u003c/br\u003e\n\n# :mag: Stacks\n\n### Recommend\n\n![Python](https://img.shields.io/badge/python-3776AB?style=for-the-badge\u0026logo=python\u0026logoColor=white)\n![fastapi](https://img.shields.io/badge/fastapi-black?style=for-the-badge\u0026logo=fastapi\u0026logoColor=#009485)\n![scikitlearn](https://img.shields.io/badge/scikitlearn-F7931E?style=for-the-badge\u0026logo=scikitlearn\u0026logoColor=white)\n![elasticsearch](https://img.shields.io/badge/elasticsearch-FEC514?style=for-the-badge\u0026logo=elasticsearch\u0026logoColor=white)\n![logstash](https://img.shields.io/badge/logstash-black?style=for-the-badge\u0026logo=logstash\u0026logoColor=white)\n![kibana](https://img.shields.io/badge/kibana-00BFB3?style=for-the-badge\u0026logo=kibana\u0026logoColor=white)\n![jupyter](https://img.shields.io/badge/jupyter-F37626?style=for-the-badge\u0026logo=jupyter\u0026logoColor=white)\n![googlecolab](https://img.shields.io/badge/googlecolab-F9AB00?style=for-the-badge\u0026logo=googlecolab\u0026logoColor=white)\n\n### Backend\n\n![Java](https://img.shields.io/badge/java-%23ED8B00.svg?style=for-the-badge\u0026logo=openjdk\u0026logoColor=white)\n![Spring Boot](https://img.shields.io/badge/SpringBoot-236DB33F?style=for-the-badge\u0026logo=springboot\u0026logoColor=white)\n![Hibernate](https://img.shields.io/badge/Hibernate-59666C?style=for-the-badge\u0026logo=Hibernate\u0026logoColor=white)\n![JWT](https://img.shields.io/badge/JWT-brown?style=for-the-badge\u0026logo=JSON%20web%20tokens)\n![Querydsl](https://img.shields.io/badge/Querydsl-purple?style=for-the-badge)\n![MySQL](https://img.shields.io/badge/mysql-%2300f?style=for-the-badge\u0026logo=mysql\u0026logoColor=white)\n![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?style=for-the-badge\u0026logo=redis\u0026logoColor=white)\n![apachekafka](https://img.shields.io/badge/apachekafka-231F20?style=for-the-badge\u0026logo=apachekafka\u0026logoColor=white)\n\n### Frontend\n\n![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=for-the-badge\u0026logo=html5\u0026logoColor=white)\n![CSS3](https://img.shields.io/badge/css3-%231572B6.svg?style=for-the-badge\u0026logo=css3\u0026logoColor=white)\n![Typescript](https://img.shields.io/badge/typescript-%23323330.svg?style=for-the-badge\u0026logo=typescript\u0026logoColor=%23F7DF1E)\n![nextdotjs](https://img.shields.io/badge/next.js-%2320232a.svg?style=for-the-badge\u0026logo=nextdotjs\u0026logoColor=%2361DAFB)\n![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB)\n![React Dom](https://img.shields.io/badge/React%20Dom-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB)\n![Zustand](https://img.shields.io/badge/Zustand-purple?style=for-the-badge)\n![sass](https://img.shields.io/badge/sass-DB7093?style=for-the-badge\u0026logo=sass\u0026logoColor=white)\n\n### Infra\n\n![EC2](https://img.shields.io/badge/EC2-E95420?style=for-the-badge\u0026logo=amazonec2\u0026logoColor=white)\n![NCP](https://img.shields.io/badge/NCP-%23009639?style=for-the-badge\u0026logo=Naver\u0026logoColor=white)\n![Nginx](https://img.shields.io/badge/nginx-%23009639.svg?style=for-the-badge\u0026logo=nginx\u0026logoColor=white)\n![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge\u0026logo=docker\u0026logoColor=white)\n![Ubuntu](https://img.shields.io/badge/Ubuntu-E95420?style=for-the-badge\u0026logo=ubuntu\u0026logoColor=white)\n\n### IDE\n\n![Visual Studio Code](https://img.shields.io/badge/Visual%20Studio%20Code-0078d7.svg?style=for-the-badge\u0026logo=visual-studio-code\u0026logoColor=white)\n![IntelliJ IDEA](https://img.shields.io/badge/IntelliJIDEA-000000.svg?style=for-the-badge\u0026logo=intellij-idea\u0026logoColor=white)\n\n### Management Tool\n\n![Jira](https://img.shields.io/badge/jira-%230A0FFF.svg?style=for-the-badge\u0026logo=jira\u0026logoColor=white)\n![Mattermost](https://img.shields.io/badge/Mattermost-000000?style=for-the-badge\u0026logo=Mattermost\u0026logoColor=white)\n![Discord](https://img.shields.io/badge/Discord-%235865F2.svg?style=for-the-badge\u0026logo=discord\u0026logoColor=white)\n![Notion](https://img.shields.io/badge/Notion-%23000000.svg?style=for-the-badge\u0026logo=notion\u0026logoColor=white)\n![GitLab](https://img.shields.io/badge/gitlab-E95420.svg?style=for-the-badge\u0026logo=gitlab\u0026logoColor=white)\n![Figma](https://img.shields.io/badge/figma-F24E1E?style=for-the-badge\u0026logo=figma\u0026logoColor=white)\n\n\u003c/br\u003e\n\n# 주요 기능\n\n## 칵테일\n\n| \u003cimg src='./산출물/GIFs/cocktail/Search_Cocktails.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/cocktail/Detail_Cocktail.gif' width='380px' height='200px'\u003e |\n| :----------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------: |\n|                                 **칵테일 상세 검색**                                 |                               **칵테일 상세 페이지**                                |\n\n| \u003cimg src='./산출물/GIFs/custom/FindAll_Custom_Cocktail.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/custom/Create_Custom_Cocktail.gif' width='380px' height='200px'\u003e |\n| :---------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------: |\n|                           **기저 칵테일의 커스텀 칵테일 목록**                            |                                  **커스텀 칵테일 생성**                                  |\n\n- 칵테일 이름, 재료, 베이스, 도수, 색상, 당도 를 선택하여 상세 검색을 할 수 있습니다.\n- 칵테일 상세보기에서 좋아요와 좋아요 취소를 할 수 있습니다.\n- 칵테일 상세보기에서 해당 칵테일을 기반으로 만든 커스텀 칵테일 4개를 볼 수 있습니다.\n- 커스텀 레시피 만들기를 통해 기존 칵테일 재료를 수정/삭제하면서 나만의 칵테일을 만들 수 있습니다.\n\n## 냉장고\n\n| \u003cimg src='./산출물/GIFs/refrigerator/Create_Refrigerator.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/refrigerator/Delete_Refrigerator.gif' width='380px' height='200px'\u003e |\n| :-----------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------: |\n|                                       **냉장고 생성**                                       |                                       **냉장고 삭제**                                       |\n\n| \u003cimg src='./산출물/GIFs/refrigerator/Create_Wishlist.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/refrigerator/Delete_Wishlist.gif' width='380px' height='200px'\u003e |\n| :-------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------: |\n|                                     **메모장 생성**                                     |                                     **메모장 삭제**                                     |\n\n- 재료 검색을 통해 재료를 추가하고, 클릭하여 삭제할 수 있습니다.\n- 추가된 재료를 드래그하거나 재료 검색을 통해 메모장과 냉장고를 옮겨가며 추가할 수 있습니다.\n- 메모장에 추가된 재료의 X 버튼을 클릭하면 재료가 사라집니다.\n\n## 마이페이지\n\n| \u003cimg src='./산출물/GIFs/mypage/Find_MyPage.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/custom/Modify_Custom_Cocktail.gif' width='380px' height='200px'\u003e |\n| :---------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------: |\n|                    **개인정보 확인 및 저장된 칵테일 목록**                    |                           **자신이 생성한 커스텀 칵테일 수정**                           |\n\n| \u003cimg src='./산출물/GIFs/custom/Delete_Custom_Cocktail.gif' width='380px' height='200px'\u003e |\n| :--------------------------------------------------------------------------------------: |\n|                           **자신이 생성한 커스텀 칵테일 삭제**                           |\n\n- 내정보(이름, 생년월일, 성별)와 나의 활동내용 (좋아요/나의 커스텀 칵테일)리스트를 확인할 수 있습니다.\n- 나의 커스텀 칵테일을 삭제하거나 상세화면에서 수정하기 버튼을 통해 내용을 수정할 수 있습니다.\n\n## 추천\n\n| \u003cimg src='./산출물/GIFs/recommend/Recommend_New.gif' width='380px' height='200px'\u003e | \u003cimg src='./산출물/GIFs/recommend/Recommend_Origin.gif' width='380px' height='200px'\u003e |\n| :--------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: |\n|                            **새로운 가입자 메인 화면**                             |                               **기존 사용자 메인 화면**                               |\n\n| \u003cimg src='./산출물/GIFs/recommend/Recommend_Refrigerator.gif' width='380px' height='200px'\u003e |\n| :-----------------------------------------------------------------------------------------: |\n|                                  **냉장고 재료 기반 추천**                                  |\n\n- 새로 가입한 사용자는 설문한 내용을 기반으로 추천을 받습니다.\n- 기존의 사용자는 선호도(좋아요)를 기반으로 추천을 받습니다.\n- 냉장고의 재료와 선호도(설문 조사)를 기반으로 추천을 받습니다.\n\n## 설문\n\n| \u003cimg src='./산출물/GIFs/survey/Survey.gif' width='380px' height='200px'\u003e |\n| :----------------------------------------------------------------------: |\n|                               **설문조사**                               |\n\n- 구글, 카카오, 네이버 소셜로그인을 통해 가입할 수 있습니다.\n- 가입이 완료되면 사용자 정보와 설문을 받아 저장합니다.\n\n\u003c/br\u003e\n\n# 설계 내용\n\n## ERD\n\n\u003cimg src='./산출물/ERD.PNG' width='800px' height='650px'\u003e\n\n## 아키텍쳐\n\n\u003cimg src='./산출물/Architecture.png' width='500px' height='300px'\u003e\n\n## API 명세\n\n\u003cimg src='./산출물/API명세서_1.PNG' width='750px' height='550px'\u003e\n\u003cimg src='./산출물/API명세서_2.PNG' width='750px' height='550px'\u003e\n\n## 데이터\n\n- IBA 칵테일 데이터 출처 : [2020년 IBA 공식 칵테일](https://namu.wiki/w/%ED%8B%80:IBA%20%EC%B9%B5%ED%85%8C%EC%9D%BC)\n- IBA 칵테일 이미지 출처 : [International Bartenders Association - IBA](https://iba-world.com/)\n- 기본 재료 이미지 및 아이콘 출처 : [FLATICON](https://www.flaticon.com/kr/)\n\n\u003c/br\u003e\n\n# 팀원 소개\n\n| **Profile**  |          \u003cimg src='./산출물/profile/KHJ.jpg' width='200px' height='130px'\u003e          |          \u003cimg src='./산출물/profile/YHJ.jpg' width='200px' height='130px'\u003e          |   \u003cimg src='./산출물/profile/BCJ.jpg' width='200px' height='130px'\u003e   |         \u003cimg src='./산출물/profile/CJH.jpg' width='200px' height='130px'\u003e          |  \u003cimg src='./산출물/profile/LSY.JPG' width='200px' height='130px'\u003e   |  \u003cimg src='./산출물/profile/KHW.jpg' width='200px' height='130px'\u003e   |\n| :----------: | :--------------------: | :--------------------: | :------: | :-------------------: | :-----: | :-----: |\n|     **Name**     |         \u003ca href='https://github.com/HyeongjinKim98'\u003e김형진\u003c/a\u003e         |         \u003ca href='https://github.com/YooHyunJi'\u003e유현지\u003c/a\u003e         |  \u003ca href='https://github.com/lookoblong'\u003e백천주\u003c/a\u003e  |        \u003ca href='https://github.com/green339'\u003e최지희\u003c/a\u003e         | \u003ca href='https://github.com/LUVENHOV'\u003e이승연\u003c/a\u003e  | \u003ca href='https://github.com/HiWoong'\u003e곽희웅\u003c/a\u003e  |\n| **Position** | Team Leader \u0026 Frontend | Part Leader \u0026 Frontend | Frontend | Part Leader \u0026 Backend | Backend | Backend \u0026 Infra |\n\n## 업무 분장\n\n### Frontend\n\n- 유현지: FE 리더, protype 제작, 칵테일 검색 페이지, 냉장고 페이지, 냉장고 추천 페이지, 프론트엔드 배포, 좋아요 기능 \n- 김형진 : Oauth 로그인, 설문조사 페이지, 마이페이지 \n- 백천주 : 칵테일 상세, 커스텀 칵테일 리스트, 커스텀 칵테일 상세, 커스텀 칵테일 등록/수정,\n\n### Backend\n\n- 최지희 : 설문 및 선호도 기반, 재료 유사도 기반 추천 알고리즘 설계 및 서버(FastAPI) 구현, 사용자 관련 기능 구현\n- 이승연 : 칵테일 검색을 포함한 전체 기능 구현, 냉장고 및 메모장 기능 구현, UCC 및 PPT\n- 곽희웅 : 커스텀 칵테일 기능 구현, ELK를 사용한 로그 분석으로 실시간 칵테일 랭킹 구현, Redis를 활용한 좋아요 기능 구현, 데이터 정제, 인프라(CI/CD)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyoohyunji%2Fdalkak","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyoohyunji%2Fdalkak","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyoohyunji%2Fdalkak/lists"}