처음 프로젝트를 받은 뒤 루트 디렉터리에서 아래 명령만 실행하면 시드 데이터 기반 데모 화면을 바로 확인할 수 있습니다.
이 Quick Start는 발표/시연용 기본 실행 흐름입니다.
- Google Health 연결, Raspberry Pi, DHT11, MQ-5 센서가 없어도 실행됩니다.
npm run seed-demo가 시연용 Google Health/센서/수면/피드백 데이터를 DB에 넣습니다.- Ollama는 선택 사항입니다. 자연어 피드백을 확장하고 싶을 때만 설정합니다.
npm install
cp .env.example .env
npm run init-db
npm run seed-demo
npm run dev실행 후 브라우저에서 http://localhost:3000으로 접속합니다.
선택적으로 더 자연스러운 설명형 문구를 생성하려면 Ollama를 설치한 뒤 .env에서 SLM_ENDPOINT, SLM_MODEL을 설정합니다.
ollama pull gemma4:e4b
ollama serveRaspberry Pi 센서 수집 기능을 실제 장비에서 개발할 때만 해당 환경에서 npm install i2c-bus를 별도로 실행합니다.
자세한 실행 방법은 HOW_TO_RUN.md를 참고합니다.
ZZZ는 취침 전에 오늘 밤의 수면 질 저하 가능성을 예측하고, 기상 후에는 실제 수면 결과와 사용자 체감을 함께 해석하며, 반복 사용을 통해 점진적으로 개인화되는 스마트 헬스케어 서비스입니다.
이 프로젝트는 단순히 “어젯밤 어떻게 잤는지”를 보여주는 데서 끝나는 것이 아니라, 다음과 같은 순환 구조를 지향합니다.
- 웨어러블 및 환경 데이터 수집
- 현재 상태와 수면 결과 해석
- 행동 가능한 피드백 제공
- 누적 패턴을 반영한 이후 예측 기준 갱신
즉, ZZZ는 단순한 수면 기록 서비스가 아니라 사전 개입, 설명 가능한 해석, 점진적 개인화를 핵심으로 두는 서비스입니다.
기존의 많은 수면 관련 서비스는 주로 기상 후 결과 확인에 머무릅니다.
사용자는 수면 시간, 수면 단계, 점수와 같은 결과를 볼 수는 있지만, 이미 수면이 끝난 뒤이기 때문에 그날 밤의 행동을 바꾸기에는 늦은 경우가 많습니다.
또한 같은 수면 데이터가 기록되더라도 사용자가 실제로 느끼는 만족도는 다를 수 있으며, 단순한 점수만으로는 왜 그런 결과가 나왔는지 이해하기 어려운 경우도 많습니다.
ZZZ는 이러한 한계를 보완하기 위해 다음과 같은 방향을 목표로 합니다.
- 취침 전에 수면 질 저하 가능성을 예측
- 결과를 단순 점수로 끝내지 않고 해석 가능한 이유와 행동 제안 제공
- 기상 후 실제 수면 결과와 주관적 만족도를 함께 반영
- 누적된 사용자 패턴을 바탕으로 이후 예측과 해석을 점진적으로 보정
취침 전 시점에 현재 상태와 환경을 바탕으로 수면 질 저하 가능성을 미리 예측하고, 사용자가 실제로 행동을 바꿀 수 있는 기회를 제공합니다.
단순히 결과를 보여주는 것이 아니라, 왜 그런 결과가 나왔는지와 어떤 요인이 영향을 주었는지를 함께 설명하는 방향을 지향합니다.
자동 계산 결과와 사용자의 주관적 만족도를 함께 반영하여, 시간이 지날수록 사용자에게 더 맞는 예측 기준과 해석 기준으로 조정됩니다.
취침 전 1시간의 웨어러블 데이터와 환경 데이터를 바탕으로 오늘 밤 수면 질 저하 가능성을 예측합니다.
예측 결과와 함께 현재 위험 요인 1~2개를 제시하고, 바로 실천할 수 있는 행동 제안 1개를 제공합니다.
기상 후 실제 수면 결과와 사용자 만족도를 함께 반영하여 주요 원인, 보조 원인, 설명형 피드백을 생성합니다.
서비스는 다음 기준을 바탕으로 100점 만점의 Sleep Score를 계산합니다.
- Time Asleep — 50점
- Deep & REM — 25점
- Restoration — 25점
수면 결과, 사용자 만족도, 자동 점수와 체감의 차이를 누적하여 이후 예측과 해석의 기준으로 반영합니다.
ZZZ는 On-Premise 구현을 중심으로 설계된 스마트 헬스케어 시스템이며, 이후 클라우드 확장까지 고려한 구조를 갖습니다.
- Raspberry Pi 기반 환경 센서 수집
- Google Health API 호출
- 로컬 버퍼 및 저장
- feature 생성
- 취침 전 예측
- 기상 후 사후 분석
- REST API 및 대시보드 서비스 제공
- 장기 저장
- 확장 가능한 처리 파이프라인
- 설명형 피드백 계층 강화
- 서비스 구조 확장
현재 프로젝트는 On-Premise 구현을 우선으로 진행하되, 이후 클라우드 전환 시에도 구조적으로 자연스럽게 이어질 수 있도록 설계하고 있습니다.
- Backend: Node.js, Express
- Database: SQLite
- Hardware: Raspberry Pi, DHT11, MQ-5 + ADC module
- External API: Google Health API
- Infra: AWS (future extension architecture)
이 프로젝트는 의료 진단 시스템을 목표로 하지 않습니다.
대신 사용자가 자신의 수면을 더 잘 이해하고, 취침 전에 행동을 조정하며, 기상 후 결과를 해석하고, 반복 사용을 통해 점진적으로 더 맞는 기준을 형성할 수 있도록 돕는 보조적 스마트 헬스케어 서비스를 목표로 합니다.
장기적으로는 다음과 같은 방향을 지향합니다.
- 더 강한 개인화
- 더 명확한 해석
- On-Premise와 Cloud의 자연스러운 연결
- 실제 구현 제약을 반영한 현실적인 스마트 헬스케어 서비스 설계
프로젝트 구조와 실행 흐름, 각 계층의 역할은 아래 문서에서 확인할 수 있습니다.
Keywords: Smart Healthcare Sleep Quality Prediction Wearable Data Google Health API Raspberry Pi Environmental Sensing Explainable Feedback Personalized Health Service On-Premise System