Skip to content

Team-cheonhamujeok/AtchI-iOS

Repository files navigation

💟 AtchI-iOS

안녕하세요, 치매 예방 및 AI 진단 솔루션 ✨엣치✨입니다

엣치는 웨어러블 기기(애플워치)에서 수집한 사용자의 활동 패턴을 AI로 분석해 치매 확률을 계산하고 치매 초기에 병원에 방문할 수 있도록 도와주는 치매 예방 애플리케이션입니다.

image

🌲 메뉴 트리

image

🏛️ 아키텍처

image

Main App

사용자와 직접적으로 상호작용하는 앱 타겟입니다.

  • Presentation
    • View: SwiftUI로 구성된 화면입니다.
    • ViewModel: View의 상태를 관리하고 사용자 입력에 따른 Service를 호출합니다.
  • Service: 네트워킹 및 계산 등 비즈니스 로직 가진 컴포넌트입니다.
  • Helper: 권한 인증 프로세스, 날짜 계산, 그 외 iOS 네이티브 API(Push Notification, Haptic)사용을 도와주는 컴포넌트입니다.

HealthKit

헬스킷 관련 로직을 따로 분리했습니다. (추후 패키지화)

  • Provider: HKStore와 HKQuery를 이용해 건강 정보를 가져오는 로직을 추상화합니다.
  • Service: Provider를 이용해 가져온 건강정보를 가공해 앱 내에서 사용할 수 있는 형태로 반환합니다.

📁 폴더링

.
├── AtchI
│   ├── Info.plist
│   ├── AppDelegate.swift
│   ├── AtchIApp.swift
│   ├── Resource
│   ├── HealthKit
│   │   ├── Error
│   │   ├── Provider
│   │   └── Service
│   ├── Helper
│   ├── Presentation
│   │   └── Feature..
│   │       ├── View
│   │       └── ViewModel
│   ├── Service
│   │   └── Domain..
│   │       ├── Model
│   │       ├── Error
│   │       ├── Mock
│   │       └── API
│   └── Util
│       ├── Constant
│       ├── Extension
│       ├── PropertyWrapper
│       ├── Structure
│       └── UI
├── AtchIServiceTests
│   ├── Target
│   └── Mock
├── AtchIViewModelTests
│   ├── Target
│   └── Mock
├── README.md
└── Secrets.xcconfig
  • Presentation: 기능별로 View와 ViewModel을 포함합니다.
  • Service: 도메인별로 Model(DTO), Error, Mock, API(MoyaClient)를 포함합니다.
  • Util: 앱 전역적을 사용되는 구조체, 열거형, Extension 등을 포함합니다.
  • Resource: .plist파일과 .rtf 파일을 포함합니다.
  • Tests: 각 타겟 클래스에 대한 Tests파일을 하나씩 생성합니다. Mock은 테스트 타겟 루트 하단 폴더에서 관리합니다.

📘 라이브러리

라이브러리명 용도 깃허브
SwiftUI UI -
Combine 리액티브 프로그래밍 -
CombineMoya 네트워킹 https://github.com/Moya/Moya
MarkdownUI 마크다운 뷰 https://github.com/gonzalezreal/swift-markdown-ui
Factory 컨테이너형 DI https://github.com/hmlongco/Factory

👥 팀

강민규 김가은 김민제 이도연 이봄이
image image image image image
iOS BACKEND AI iOS iOS
@KoreaMango @13wjdgk @minjjait @dodo849 @spring

About

AI치매 진단 및 예방 솔루션 ✨엣치✨입니다

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published