GithubHelp home page GithubHelp logo

jnu-econovation / eatceed Goto Github PK

View Code? Open in Web Editor NEW
7.0 0.0 7.0 37.45 MB

개발집 막내아들 팀 식사 알림과 칼로리 계산 앱 저장소입니다.

Jupyter Notebook 18.49% Python 27.26% Dockerfile 0.07% Shell 0.02% Java 54.05% HTML 0.11%
ai be

eatceed's Introduction

Project Description

체중 증가를 목표로 하는 분들을 위한 맞춤형 앱

Gaeabljip Developers

백엔드 개발자 백엔드 개발자 인공지능 개발자 인공지능 개발자 인공지능 개발자
이진혁 황대선 박경준 김성빈 김채원

Feature Overview

  • 사용자가 섭취한 음식을 기반으로 칼로리와 영양 성분을 계산
  • 칼로리 관리와 체중 증가 목표를 달성하기 위한 진행 상황을 추적
  • 알림을 통해 사용자가 음식을 설정한 시간에 섭취하도록 유도하여 건강한 체중 증가 지원
  • 칼로리 캘린더를 통한 일일 권장 섭취 칼로리 달성률을 확인
  • 챗봇을 이용한 음식 추천

eatceed's People

Contributors

ajang369 avatar chaewon215 avatar hwangdaesun avatar kyeong6 avatar ljh098 avatar saine0501 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

eatceed's Issues

[BE/feat] FE 요청에따른 응답 DTO 수정

⚠️ Issue

  • FE 요청에따른 응답 DTO 수정

✏️ To Do List

  • 캘린더 상세 보기 응답 DTO 수정
  • 홈 화면 응답 DTO 수정

ETC

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[BE/docs] Spring REST Docs 적용

🚨 Issue

  • 웹 계층 테스트 코드가 다 작성되어있고, 상세한 API 문서 제공을 위해 REST Docs 사용

✅ To Do List

  • REST Docs 만들기

🎸 ETC

🏞 ScreenShot

[BE/feat] 회원 생성하는 유스케이스 구현

⚠️ Issue

  • 회원을 생성하는 유스케이스 구현하려고 합니다.

✏️ To Do List

  • 웹 어댑터 구현 및 테스트
  • 유스케이스 구현
  • 입력 유효성 검증 구현
  • 비즈니스 규칙 검증 구현 및 테스트

ETC

1차 스프린트에서는 영속성 어댑터의 구현은 testData를 만들어서 반환

🏞 ScreenShot

[BE/feat] 식사 등록하는 기능 구현

⚠️ Issue

  • 식사 등록하는 유스케이스 구현

✏️ To Do List

  • 웹 어댑터 구현 및 테스트
  • 통합 테스트 수행
  • 공통 통합 테스트 관련 클래스 생성 - 데이터 초기화용
  • PreSignedUrl 구하는 유스케이스 생성
  • 식사 등록하는 유스케이스 구현

ETC

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[AI/feat] ChatGPT Fine-Tuning 적용

🚨 Issue

  • ChatGPT Fine-Tuning을 진행하기 위한 준비 작업 및 학습 진행

✅ To Do List

  • 기존 데이터셋 ChatGPT 3.5-turbo Fine-Tuning 데이터셋 형식으로 변환
  • OpenAI에서 Fine-Tuning 진행

🎸 ETC

🏞 ScreenShot

[BE/feat] 인증/인가 커스텀 예외 처리

🚨 Issue

  • 인증/인가 커스텀 예외 처리 및 테스팅

✅ To Do List

  • JWT 관련 커스텀 예외 생성
  • 인증/인가 관련 예외 처리 핸들링 수정

🎸 ETC

🏞 ScreenShot

[BE/setting] 개발 환경 세팅

⚠️ Issue

  • 개발 환경 세팅

✏️ To Do List

  • h2 DB 세팅
  • 공통 요청 및 응답 클래스 생성
  • 공통 예외처리 클래스 생성
  • 기본 Entity 생성
  • 이슈 템플릿 수정

ETC

🏞 ScreenShot

[AOS/feat] error handling

🚨 Issue

  • 네트워크 통신 과정에서 발생하는 에러에 대한 처리를 적용합니다.

✅ To Do List

  • 전역 예외처리를 위해 application 클래스에 flow 생성
  • 각 activity에 스낵바를 위한 scafford 적용
  • 각 네트워크 통신 부분에서 에러 핸들링 적용

🎸 ETC

에러를 표시하기위해 전역으로 flow를 생성하는게 괜찮을지 확인 필요

🏞 ScreenShot

[AOS/feat] 서버 연결

🚨 Issue

  • 서버와 연결합니다.

✅ To Do List

  • 레트로핏 의존성 설정
  • 레트로핏 인터셉터 생성
  • 레트로핏 객체 생성,
  • 레트로핏 서비스 생성
  • 각 스크린과 연결

🎸 ETC

🏞 ScreenShot

[BE/feat] 오늘 먹은 식사를 분석하여 제공해주는 기능 구현

⚠️ Issue

  • 오늘 먹은 식사를 분석하여 제공하는 기능 구현

✏️ To Do List

  • 오늘 먹은 식사를 분석 및 제공 기능 구현
  • 오늘 먹은 식사 분석 기능 통합 테스트 수행
  • 시간 관련 세팅
  • 소수점 3번째자리에서 반올림하도록 커스텀 Serializer 생성

ETC

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[BE/feat] 음식 제공해주는 기능 구현

⚠️ Issue

  • 음식 리스트를 무한 스크롤 방식으로 제공하기는 기능 구현
  • 음식 상세 정보 제공하는 기능 구현

✏️ To Do List

  • 음식 리스트를 무한 스크롤 방식으로 제공하는 유스케이스 구현
  • 음식 상세 정보 제공하는 유스케이스 구현
  • 음식 리스트를 무한 스크롤 방식으로 제공하기는 기능 통합 테스트
  • 음식 상세 정보 제공하는 기능 통합 테스트

ETC

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[AOS/feat] 캘린더 ViewModel구현 및 CalendarDTO 연결

🚨 Issue

  • 캘린더 화면의 데이터를 ViewModel을 사용하여 업데이트, 변경하도록 구현

✅ To Do List

  • CalendarViewModel 생성 및 DTO 연결
  • 현재 year, month를 기준으로 모든 days에 해당하는 DTO 초기화
  • CalendarScreen에서 DTO에 따라 변경되어야 할 데이터들 연동

🎸 ETC

🏞 ScreenShot

[BE/feat] 게스트용 온보딩 기능

🚨 Issue

  • 게스트 온보딩 구현
  • 게스트 인증 토큰 반환

✅ To Do List

  • 온보딩(회원가입)시 게스트 용 아이디, 비밀번호 생성
  • 온보딩 후, 게스트 토큰 반환

🎸 ETC

  • 게스트와 회원 생성 코드 분리

🏞 ScreenShot

[AOS/setting] Response DTO 생성

⚠️ Issue

  • 백엔드와 통신 결과를 받아오기 위한 Response DTO를 생성합니다..

✏️ To Do List

  • model - dto - response 패키지 생성
  • api 문서를 보고 dto 생성

ETC

🏞 ScreenShot

[AOS/feat] 로그인 JWT 적용

🚨 Issue

  • 게스트 로그인 기능에 JWT를 적용합니다.

✅ To Do List

  • 게스트 로그인 버튼을 눌렀을 때 JWT를 발행
  • 발행한 토큰을 preference에 저장
  • 서버에 요청하여 인증되면 온보딩 화면으로 이동

🎸 ETC

🏞 ScreenShot

[AI/feat] QLoRA(Fine-Tuning) KoAlpaca-Polyglot-5.8B 모델 적용

⚠️ Issue

  • Machine_generated_instruction.py 데이터를 활용하여 KoAlpaca-Polyglot-5.8B모델을 QLoRA 방식인 Fine-Tuning 적용
  • 적용한 후 손실 함수 그래프를 확인한 후 하이퍼 파라미터 찾기

✏️ To Do List

  • 모델 Fine-Tuning 적용
  • Loss 확인 후 Hyper Parameter 찾기

ETC

🏞 ScreenShot

[AOS/feat] 알람 Room db 연동

🚨 Issue

  • 알람 관련 화면들 (add, alarm)에 room을 연결합니다.

✅ To Do List

  • 룸 의존성 설정
  • 룸 변환 클래스 생성
  • 룸 데이터베이스 클래스 생성
  • 룸 데이터 entity 생성
  • 룸 DAO 생성
  • 룸 적용

🎸 ETC

🏞 ScreenShot

[BE/feat] 목표 달성 여부 및 달성률을 구하는 유스케이스

⚠️ Issue

  • 단/탄/지 목표 달성 여부 및 칼로리 달성률을 구하는 유스케이스를 만들려고 합니다.

✏️ To Do List

  • 칼로리 달성률을 구하는 유스케이스 구현
  • 단/탄/지 목표 달성 여부를 구하는 유스케이스 구현
  • 웹 어댑터 구현 및 테스트

ETC

FoodModel과 MealModel 테스트 데이터 생성

🏞 ScreenShot

[AOS/feat] 알람 설정 화면 UI

🚨 Issue

  • 알람 설정 화면 UI 배치

✅ To Do List

  • 사용 문자 string.xml에 등록
  • 사용 색상 color.xml에 등록
  • 아이콘 세팅
  • MealTypeEnum 생성
  • AlarmInfoClass 생성
  • AlarmViewModel 생성
  • AlarmScreen 에 컴포넌트 배치

🎸 ETC

🏞 ScreenShot

[AOS/feat] 로그인, 온보딩 Activity 생성

🚨 Issue

  • 로그인, 온보딩 화면에서 사용할 Activity를 생성합니다.

✅ To Do List

  • OnboardActivity 생성 및 시작 액티비티 설정
  • 로그인 화면 -> 온보딩 화면 전환
  • OnboardActivity -> MainActivity 전환

🎸 ETC

🏞 ScreenShot

[AOS/bug] 바텀 네비게이션 적용

브랜치 base 생성 오류로 인해 close 한 후 다시 이슈 생성합니다.

⚠️ Issue

  • Bottom Navigation Bar로 각 화면을 전환할 수 있습니다.

✏️ To Do List

  • 홈, 캘린더, 등록, 추천, 알람 화면 파일 만들기
  • 바텀 네비게이션 아이템 만들기
  • MainActivity에 적용

ETC

수정할 사항

  • 메인 컬러에 맞게 background와 content 색깔 변경
  • material design3 학습 후 적용
  • 네비게이션 기능 학습 후 수정

🏞 ScreenShot

[AOS/feat] 온보딩 화면 입력 데이터 RequestDTO 연결

🚨 Issue

  • 온보딩 화면에 해당하는 ViewModel을 생성하여 연결합니다.

✅ To Do List

  • OnboardingScreen의 활동 정도 라디오버튼 수정
  • 성별 선택 버튼을 눌렀을 때 gender 입력 데이터 변경 구현
  • ViewModel 생성

🎸 ETC

🏞 ScreenShot

[BE/feat] 회원 생성하는 기능 구현

⚠️ Issue

  • 회원 생성하는 기능을 구현하려고 합니다.

✏️ To Do List

  • 엔티티 생성
  • 컨버터 구현
  • 회원 생성 통합 테스트
  • 테스트 격리

ETC

  • gender 타입 변경
  • Physique 모델 제거

🏞 ScreenShot

[BE/feat] 오늘 먹은 칼로리를 계산하여 반환하는 유스케이스 구현

⚠️ Issue

  • 유지 및 목표 칼로리 구하는 유스케이스 구현
  • 현재 칼로리를 구하는 유스케이스 구현

✏️ To Do List

  • 사용자의 유지 칼로리를 계산하고 이를 통해 유지 단백질/탄수화물/지방(g)을 구함
  • 현재 먹은 칼로리를 계산하고 이를 통해 현재 먹은 단백질/탄수화물/지방(g)을 구함
  • 식사한 영양소를 분석하여 알려주는 웹 어댑터 생성 및 테스트

ETC

MemberModel의 키,몸무게 타입 double로 변경
DB 연결을 하지 않아 테스트 데이터 사용

🏞 ScreenShot

[AI/setting] self-instruction 필요 파일 세팅

⚠️ Issue

  • self-instruction 필요 파일 세팅

✏️ To Do List

  • self-instruct seed dataset 업로드
  • self-instruct machine generate dataset 업로드
  • self-instruct 코드 구현을 위한 prompt 지침서 업로드

ETC

🏞 ScreenShot

[AOS/feat] 물리 엔진 컴포넌트

🚨 Issue

  • 홈화면에 애니메이션 구성을 위한 물리엔진 컴포넌트를 생성합니다.

✅ To Do List

  • 물리엔진 class 생성
  • 컴포넌트 생성
  • 홈화면 배치

🎸 ETC

후에 on off 기능을 추가 필요

🏞 ScreenShot

image

[AOS/setting] analytics 도입

⚠️ Issue=

  • firebase analytics를 도입합니다.

✏️ To Do List

  • SDK 설정
  • MainApplication 생성
  • UncaughtExceptionHandler 세팅

ETC

🏞 ScreenShot

[BE/feat] 해당 일자의 식사 정보 분석하여 제공하는 기능

⚠️ Issue

  • 해당 일자의 식사 정보 분석하여 제공하는 기능 구현

✏️ To Do List

  • 해당 일자에 먹은 음식 정보 보여주는 유스케이스 구현
  • 해당 일자의 식사 정보 분석하여 제공하는 기능 통합 테스트

ETC

  • /v1/meal/{date} -> /v1/meal 변경
  • /v1/meal/{date}/food -> /v1/meal/{date} 변경

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[AOS/feat] 바텀 네비게이션 바 적용

⚠️ Issue

  • Bottom Navigation Bar로 각 화면을 전환할 수 있습니다.

✏️ To Do List

  • 홈, 캘린더, 등록, 추천, 알람 화면 파일 만들기
  • 바텀 네비게이션 아이템 만들기
  • MainActivity에 적용

ETC

수정할 사항

  • 메인 컬러에 맞게 background와 content 색깔 변경
  • material design3 학습 후 적용
  • 네비게이션 기능 학습 후 수정

🏞 ScreenShot

[AOS/setting] Request DTO 생성

⚠️ Issue

  • 백엔드에 통신을 요청하기 위한 DTO 생성

✏️ To Do List

  • model - DTO - Request 패키지 생성
  • API 문서를 참고하여 DTO 생성

ETC

🏞 ScreenShot

[BE/feat] 해당 월의 달성 여부 보여주는 기능 구현

⚠️ Issue

  • 해당 월의 달성 여부 보여주는 기능 구현

✏️ To Do List

  • testSetUp.sql에 테스트용 데이터 추가
  • AchieveModel 재설계 및 구현
  • 해당 월의 달성 여부 보여주는 유스케이스 구현
  • 해당 월의 달성 여부 보여주는 기능 통합테스트

ETC

  • Achieve -> Trainer

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[BE/feat] Logback 적용

🚨 Issue

  • 로깅 작업

✅ To Do List

  • 로깅 필터 구현
  • logback-spring.xml 구현

🎸 ETC

🏞 ScreenShot

[BE/feat] 특정 일자 식사 분석해주는 유스케이스 구현

⚠️ Issue

  • 특정 일자 식사 분석해주는 유스케이스 구현하려고 한다.

✏️ To Do List

  • 특정 식사에 먹은 음식들을 조회하는 유스케이스 구현
  • 특정 음식을 조회하는 유스케이스 구현
  • 특정 일자 식사 분석해주는 웹 어댑터 구현 및 테스트

ETC

  • Port 인터페이스들 구현

🏞 ScreenShot

[AOS/feat] Home 화면 배치

🚨 Issue

  • 홈 화면에 각종 컴포넌트를 배치하면서 조금씩 조정합니다.

✅ To Do List

  • 물리엔진 컴포넌트 조정
  • 게이지 컴포넌트 조정
  • 홈화면에 배치

🎸 ETC

설정, 공유 버튼의 경우 추후에 추가합니다.

🏞 ScreenShot

[AOS/feat] 진행도 게이지

⚠️ Issue

  • 홈화면(그리고 일부 화면)에 보이는 진행도 막대(게이지)를 만듭니다.

✏️ To Do List

  • color.xml 세팅
  • 폰트 세팅
  • 컴포넌트 생성

ETC

🏞 ScreenShot

image

[AOS/feat] 사진 등록 화면 구현

🚨 Issue

  • 사진 등록 화면을 구현합니다.
  • 기존화면과 흐름이 다르기에 새로운 액티비티로 구현합니다.

✅ To Do List

  • RegistrationActivity 생성
  • RegistrationScreen 생성
  • local storage에서 사진 불러오기 구현
  • room에 이미지 저장 구현
  • 컴포넌트 배치

🎸 ETC

🏞 ScreenShot

[AOS/feat] 캘린더 화면 구성 및 기능 구현

🚨 Issue

  • 캘린더 화면 레이아웃 구성
  • 날짜 선택 기능 구현

✅ To Do List

  • 캘린더 전체 레이아웃 틀 구성
  • 상단 요일 구성
  • year, month에 맞는 days 배치
  • 칼로리 달성률 텍스트 배치
  • 탄,단,지 표시 원 배치

🎸 ETC

추후 날짜를 클릭했을 때 바텀시트 안에 해당 날짜의 데이터들이 표시되는 기능 추가 예정

🏞 ScreenShot

[BE/feat] 게스트 인증/인가 구현

🚨 Issue

  • security를 이용하여 게스트 인증 및 인가 기능을 개발하려고 합니다.

✅ To Do List

  • JWT 인증 필터 구현
  • 시큐리티 반영으로 인한 기존 통합 테스트 및 컨트롤러 계층 테스트 보충
  • 요청에 관한 권한 설정
  • 인증/인가 예외 처리

🎸 ETC

🏞 ScreenShot

[AOS/feat] 사진 추가 UI

🚨 Issue

  • 사진 추가 화면에 UI를 배치합니다.

✅ To Do List

  • 사용할 icon 등록
  • 사용할 string 등록
  • 패키지 이동
  • 공통 컴포넌트로 분리
  • 알람 data class 수정

🎸 ETC

🏞 ScreenShot

[BE/feat] PreSignedUrl을 제공하는 기능 구현

⚠️ Issue

  • PreSignedUrl을 생성하는 기능 구현
  • PreSignedUrl을 제공하는 기능 구현

✏️ To Do List

  • S3 관련 의존성 추가 및 Config 파일 생성
  • PreSignedUrl을 생성하는 유스케이스 구현
  • PreSignedUrl을 제공하는 유스케이스 구현
  • S3 버킷 생성 및 정책 결정
  • EC2에 RDS 연결하여 배포

ETC

  • test profile, dev profile 분리
  • 현재까지 만들어진 기능 배포

🏞 ScreenShot

  • Add any other context or screenshots about the feature request here.

[AOS/feat] 로그인, 온보딩 화면 UI 구성

🚨 Issue

  • 앱을 시작할 때 나타나는 로그인 화면과 온보딩 화면의 UI를 구성합니다.

✅ To Do List

  • 로그인 화면 게스트, 일반 로그인 버튼
  • 온보딩 화면 키, 몸무게, 나이 입력
  • 성별 선택
  • 평균 활동량 선택
  • 특이사항 입력

🎸 ETC

  • 추후 온보딩 화면에서 성별 선택 기능 변경 예정

🏞 ScreenShot

[AOS/setting] 폰트, 스타일, 색상, 테마 설정

🚨 Issue

  • 앱에 사용되는 폰트, 스타일, 색상, 테마 설정

✅ To Do List

  • 프로젝트에 font 추가
  • 추가한 font를 사용하여 style 등록
  • 앱에 사용될 color 추가

🎸 ETC

테마 설정은 추후 디자인 논의 후 등록 예정

🏞 ScreenShot

[AI/feat] 채팅 서버 기본 구조 설정

🚨 Issue

  • FastAPI를 이용하여 채팅 서버의 기본 구조를 구현

✅ To Do List

  • OpenAI API 연결
  • FastAPI 기본 세팅
  • Query에 따른 응답(response) 구현

🎸 ETC

🏞 ScreenShot

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.