Skip to content

Dayun417/CheckFit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CheckFit

식단, 운동, 수분 섭취, 체중, 단식 기록을 한 화면에서 관리할 수 있도록 만든 iOS 건강관리 도우미 애플리케이션

시연 영상 (이미지 링크)

스크린샷 2026-06-13 오후 5 22 38

1. 프로젝트 수행 목적

1.1 프로젝트 정의

CheckFit은 사용자가 매일의 건강 습관을 쉽고 빠르게 기록하고, 기록된 데이터를 기반으로 자신의 생활 패턴을 확인할 수 있도록 돕는 모바일 헬스케어 앱입니다. 단순 기록 기능에 그치지 않고 연속 기록, 미션, 코인 보상, 운동 콘텐츠 탐색 기능을 함께 제공하여 건강관리 활동을 지속할 수 있도록 설계했습니다.

1.2 프로젝트 배경

건강관리는 꾸준한 식단 관리, 운동, 수분 섭취, 체중 변화 확인이 중요하지만 여러 항목을 따로 기록하면 번거롭고 지속하기 어렵습니다. 특히 사용자가 직접 기록해야 하는 앱은 입력 과정이 복잡할수록 사용 빈도가 낮아질 수 있습니다.

CheckFit은 이러한 문제를 해결하기 위해 핵심 건강 지표를 하나의 앱에서 통합 관리하고, 빠른 기록과 시각적 피드백을 제공하여 사용자가 부담 없이 건강 습관을 이어갈 수 있도록 기획되었습니다.

1.3 프로젝트 목표

  • 식단, 운동, 수분, 체중, 단식 정보를 통합 기록하는 건강관리 앱 구현
  • 사용자가 오늘의 건강 상태를 한눈에 확인할 수 있는 대시보드 제공
  • 연속 기록, 미션, 코인 보상 기능을 통한 습관 형성 유도
  • 운동 콘텐츠 검색 및 카테고리 필터링을 통한 홈트레이닝 접근성 향상

2. 프로젝트 개요

2.1 프로젝트 설명

CheckFit은 바쁜 일상 속에서도 사용자가 자신의 건강 상태를 꾸준히 관리할 수 있도록 돕는 iOS 기반 건강관리 애플리케이션입니다. 사용자는 식사, 운동, 수분 섭취, 체중, 단식 기록을 날짜별로 입력하고 확인할 수 있으며, 앱은 기록된 데이터를 바탕으로 하루 건강 상태를 요약해 보여줍니다. 또한 미션과 보상 시스템, 연속 기록 기능을 통해 단순한 건강 기록을 습관 형성 활동으로 확장하는 것을 목표로 합니다.

2.2 기대효과

  • 사용자는 여러 건강관리 항목을 하나의 앱에서 관리하여 기록 부담을 줄일 수 있습니다.
  • 날짜별 건강 기록과 요약 정보를 통해 자신의 생활 습관을 쉽게 파악할 수 있습니다.
  • 연속 기록과 미션 보상 구조를 통해 건강관리 활동을 지속하는 동기를 얻을 수 있습니다.
  • 운동 콘텐츠 탐색 기능을 통해 사용자가 상황에 맞는 홈트레이닝 영상을 빠르게 찾을 수 있습니다.
  • 앱 사용 중 입력한 건강 데이터를 간단하게 유지하고 재확인할 수 있습니다.

2.3 주요기능 및 화면

  • 시작 화면
스크린샷 2026-06-13 오후 3 09 16
  • 홈 화면
스크린샷 2026-06-13 오후 3 09 59
  • 식단 기록 화면
    • 음식 검색, 끼니별 기록, 직접 등록, 칼로리 및 영양 정보 관리
스크린샷 2026-06-13 오후 3 07 05 스크린샷 2026-06-13 오후 3 03 45 스크린샷 2026-06-13 오후 3 04 39 스크린샷 2026-06-13 오후 3 05 52
  • 체중 기록 화면
    • 체중, 골격근량, 체지방 정보 입력, 통계 확인
스크린샷 2026-06-13 오후 3 14 01 스크린샷 2026-06-13 오후 3 14 29
  • 단식 설정 화면
    • 단식 시작 시간과 목표 시간 설정, 완료 기록 관리
스크린샷 2026-06-13 오후 3 17 03 스크린샷 2026-06-13 오후 3 17 23 스크린샷 2026-06-13 오후 3 18 47
  • 운동 기록 화면
    • 운동명, 운동 시간, 소모 칼로리, 강도 기록 및 통계 확인
스크린샷 2026-06-13 오후 3 21 08 스크린샷 2026-06-13 오후 3 21 49 스크린샷 2026-06-13 오후 3 22 07 스크린샷 2026-06-13 오후 3 23 08
  • 수분 기록 화면
    • 목표 섭취량과 섭취 단위 설정, 일일 수분 섭취량 기록
스크린샷 2026-06-13 오후 3 24 37 스크린샷 2026-06-13 오후 3 24 53 스크린샷 2026-06-13 오후 3 28 04
  • 미션 화면
    • 식사 기록, 물 마시기, 움직이기 등 미션 완료 시 코인 획득
    • 코인으로 상점 아이템 구입
스크린샷 2026-06-13 오후 3 26 30 스크린샷 2026-06-13 오후 3 26 52
  • 콘텐츠 화면
    • 전신, 요가, 복근, 스트레칭 등 운동 영상 검색 및 YouTube 연결
스크린샷 2026-06-13 오후 3 29 58 스크린샷 2026-06-13 오후 3 30 21 스크린샷 2026-06-13 오후 3 30 37
  • 마이페이지 화면
    • 닉네임, 프로필 이미지, 메모, 누적 운동 시간, 완료 미션 확인
스크린샷 2026-06-13 오후 3 32 37 스크린샷 2026-06-13 오후 3 33 02 스크린샷 2026-06-13 오후 3 35 21
  • 프로필, 연속기록, 캘린더 화면
    • 연속기록 확인
    • 캘린더로 날짜를 이동하여 기록 확인 가능
스크린샷 2026-06-13 오후 3 33 37 스크린샷 2026-06-13 오후 3 33 52 스크린샷 2026-06-13 오후 3 34 09
  • 홈 + 버튼 화면
    • 빠르게 화면 이동 가능
스크린샷 2026-06-13 오후 3 36 04

3. 주요 코드 설명

  • AppTheme.swift

    • 앱 전체에서 사용하는 색상, 폰트, 공통 UI 컴포넌트가 정의되어 있습니다.
    • HealthStore는 체중, 수분, 식단, 운동, 단식, 미션, 코인 데이터를 UserDefaults에 저장하고 관리하는 핵심 저장소입니다.
  • MainTabBarController.swift

    • 앱의 하단 탭바를 구성합니다.
    • 내 건강, 미션, 콘텐츠, 마이페이지 탭을 연결하고, 가운데 플러스 버튼을 눌렀을 때 빠른 기록 메뉴를 띄웁니다.
  • HealthViewController.swift

    • 홈 화면인 내 건강 탭을 담당합니다.
    • 오늘의 식단, 체중, 수분, 운동, 단식 데이터를 카드 형태로 보여주고 각 상세 화면으로 이동시킵니다.
  • DetailViewController.swift

    • 체중, 수분, 운동, 단식 상세 화면을 하나의 파일에서 처리합니다.
    • 전달받은 kind 값에 따라 수분 상세, 체중 상세, 운동 상세, 단식 상세 UI를 다르게 구성합니다.
  • FoodViewControllers.swift

    • 식단 기록 관련 화면들이 모여 있습니다.
    • 음식 검색, 음식 선택, 식사 기록, 식단 상세 확인, 직접 음식 등록 기능을 담당합니다.
  • ExerciseViewControllers.swift

    • 운동 기록 관련 화면들이 모여 있습니다.
    • 운동 직접 등록, 운동 기록 상세, 운동 통계 화면을 담당합니다.
  • SearchListViewController.swift

    • 운동 검색 목록 화면입니다.
    • 운동 검색, 탭 필터, 즐겨찾기, 정렬, 선택한 운동 기록 연결을 처리합니다.
  • WeightViewControllers.swift

    • 체성분 입력 화면을 담당합니다.
    • 체중, 골격근량, 체지방률을 입력받아 HealthStore에 저장합니다.
  • WaterViewControllers.swift

    • 수분 설정 화면을 담당합니다.
    • 하루 목표 섭취량과 1회 섭취량을 수정하는 바텀 시트 UI를 제공합니다.
  • FastingViewControllers.swift

    • 단식 관련 화면들이 모여 있습니다.
    • 단식 시작 시간, 목표 단식 시간, 시간 선택 시트, 단식 루틴 화면을 처리합니다.
  • MetricChartViews.swift

    • 수분, 체중, 운동 데이터를 시각화하는 커스텀 차트 뷰들이 정의되어 있습니다.
    • draw(_:)를 사용해 막대 그래프, 추세 그래프, 통계 그래프를 직접 그립니다.
  • MissionViewController.swift

    • 미션 탭 화면을 담당합니다.
    • 사용자의 기록 상태를 기준으로 미션 달성 여부를 계산하고, 코인 보상과 상점 화면을 관리합니다.
  • ContentViewController.swift

    • 운동 콘텐츠 화면을 담당합니다.
    • 운동 영상 목록을 카테고리와 검색어로 필터링하고, 선택한 영상을 YouTube로 연결합니다.
  • MyPageViewController.swift

    • 마이페이지 화면을 담당합니다.
    • 프로필, 활동 요약, 코인, 연속 기록, 완료 미션, 알림 설정, 공지사항 화면을 관리합니다.
  • SharedComponents.swift

    • 여러 화면에서 함께 쓰는 공통 컴포넌트 파일입니다.
    • 날짜 선택 화면, 연속 기록 화면, 탭 제스처 유틸리티가 포함되어 있습니다.
  • Assets.xcassets

    • 앱 아이콘, 런치 로고, 색상 에셋을 포함합니다.

4. 관련 기술

  • Swift: iOS 앱 로직 및 화면 구현
  • UIKit: ViewController 기반 화면 구성, Auto Layout, 탭바, 모달, 커스텀 UI 컴포넌트 구현
  • UserDefaults: 식단, 운동, 수분, 체중, 단식, 프로필, 미션 상태 등 로컬 데이터 저장
  • Codable: 식단, 운동, 단식 기록 데이터의 인코딩 및 디코딩 처리
  • URL Scheme: YouTube 앱 또는 웹 브라우저로 운동 콘텐츠 연결

4.1 개발 도구

  • Xcode: iOS 프로젝트 개발 및 빌드
  • Swift: 애플리케이션 개발 언어
  • Interface Builder / Storyboard: 기본 앱 진입 화면 및 리소스 구성
  • iOS Simulator: 화면 동작 및 UI 테스트

About

건강관리 도우미 ios 어플리케이션

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages