얼굴 표정 기반 일별 마음 상태 모니터링
Translation pending
HealthTypeScript · CSSGitHub @woobin-01OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
얼굴 표정 상태 모니터링 PWA
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
콜센터 등 감정노동자가 웹캠 표정으로 자기 마음 상태를 기록하는, 프라이버시 우선 웹앱입니다. 서버·계정 없이 브라우저에서만 동작하며, 기록은 기기 안(IndexedDB·localStorage)에만 남습니다. 의료 진단이 아니라 자기 인식을 돕는 도구입니다. 자세한 방향은 docs/roadmap.md에 있습니다. 1학기 정리: docs/2026-1학기-정리.md 1. 카메라 기반 인식 고도화 — DeepMedi류 rPPG/심박 참고, 웹캠 신호 안정화 2. Electron — 브라우저 PWA 대신 PC 앱, 백그라운드(숨김 창)에서도 측정 가능 3. 서버 연동 · 관리자 페이지 — 옵트인 · 로컬 우선. 원본은 기기 유지, 서버에는 동의한 하루 단위 요약만. 기본은 팀 익명 집계, 개인별 열람은 본인이 「케어 담당과 공유」를 켠 경우만 4. UI 변경 — 세부 톤은 추후 확정 5. 감정 분석 알고리즘 체계화 — 규칙·임계값·단계(로컬 점수 → 필요할 때만 AI)를 문서/코드로 고정 6. 피드백 — 기본 AI 조언 사용하되, 스트레스 지수를 의사처럼 단정하지 말 것. “컨디션 신호 / 참고용” 프레임. 의료·진단 뉘앙스 금지.Read the full README ↗
콜센터 등 감정노동자가 웹캠 표정으로 자기 마음 상태를 기록하는, 프라이버시 우선 웹앱입니다.
서버·계정 없이 브라우저에서만 동작하며, 기록은 기기 안(IndexedDB·localStorage)에만 남습니다. 의료 진단이 아니라 자기 인식을 돕는 도구입니다.
자세한 방향은 docs/roadmap.md에 있습니다. 1학기 정리: docs/2026-1학기-정리.md
감정노동자는 업무 중 표정을 관리하기 때문에, 본인도 자신의 부담을 놓치기 쉽습니다. 온마음은 본인만 보는 기록으로 “오늘은 평소보다 얼마나 힘들었는지”를 보여 주는 게 목표입니다. 데이터는 서버로 올리지 않고, 회사 대시보드용 모니터링이 아닙니다. 의료기기가 아닙니다.
통화나 업무 중 전면 카메라로 표정을 읽고, 4가지 감정(기쁨·평온·슬픔·화남) 분포를 1분 단위로 모읍니다. 하루 동안의 긍정 지수와 스트레스 지수를 보여 주고, 최근 14일 개인 기준선과 비교한 “평소 대비” 상태를 표시합니다. 푸터에 상담 전화(1577-0199, 1393)를 둡니다.
측정은 전화 시작을 누른 동안에만 돌아갑니다. 탭을 내리거나 백그라운드로 두면 브라우저 제약으로 측정이 느려지거나 멈출 수 있습니다.
| 경로 | 하는 일 |
|---|---|
/ | 소개 랜딩, 첫 측정 전 4단계 설문 |
/measure | 웹캠 측정, 실시간 오브·감정 막대, 전화 시작/종료 |
/stats | 오늘 리포트 — 긍정/스트레스 2축, 기준선, 차트 |
/demo, /orb-preview | 개발·미리보기용 (일반 사용 경로 아님) |
public/models/에서 얼굴 인식 모델 서빙npm install
npm run dev # http://localhost:3000
npm run test:run # 단발 테스트
npm run build && npm start
환경 변수는 없습니다. 카메라는 HTTPS(또는 localhost)와 권한 허용이 필요합니다. 얼굴 인식 가중치는 public/models/에서 서빙되며 합계는 약 6.5MB입니다.
테스트 (최근 확인 기준): 파일 30개, 139 passed / 4 skipped. 레코더 통합 테스트 일부는 아직 skip입니다.
배포 예: https://onmaum.vercel.app (Vercel). 별도 서버·API 키 없음.
| 구분 | 내용 |
|---|---|
| 앱 | Next.js 16 (App Router), React 19, TypeScript |
| UI | Tailwind CSS v4, Pretendard |
| 얼굴 인식 | face-api.js (SSD MobileNet + Landmark 68 + Expression) |
| 저장 | Dexie (IndexedDB), localStorage (프로필·설정) |
| 차트 | Recharts |
| 테스트 | Vitest, happy-dom, fake-indexeddb |
app/ 라우트 — /, /measure, /stats, /demo, /orb-preview
components/ 랜딩·카메라·오브·통계·푸터 등 화면
hooks/ 감정 루프, 체크인, 넛지, PiP
lib/ 감정 분석·집계, Dexie, 기준선·보정·제안
public/ PWA(manifest, sw.js), face-api 모델
tests/ Vitest
docs/ 설계 스펙·구현 계획 (참고용)
데이터 흐름: CameraView → useEmotionRecorder(약 0.5초 분석) → 1분 aggregate → Dexie emotions → /stats에서 스트레스·기준선·보정 후 리포트.
설계 세부(알고리즘, Electron 창 구조 등)는 docs/를 보세요. README는 “무엇이 실제로 돌아가는지”만 적습니다.
아직 코드에 없거나 방향만 정한 항목입니다. 기대한 기능처럼 쓰지 마세요.
내부 학습·팀 프로젝트. 별도 라이선스 미지정.