앱 네 개에 흩어진 기록을 주소 하나로 — 비개발자가 건강 대시보드를 만들어 배포하기까지

📝 한줄 요약

일정은 캘린더, 수면은 스마트워치, 혈압은 메모장에 흩어져 있어서 "이번 주 내 상태가 어땠는지"를 한눈에 볼 수 없었습니다. AI 코딩 도구로 이틀에 걸쳐 나에게 맞는 기록 화면을 직접 만들고, 인터넷 주소로 접속할 수 있게 배포까지 마쳤습니다.

바쁘시면 이것만 읽어도 돼요:

  • 시중 앱이 나와 안 맞아서 기록 항목 11개를 내가 정한 대시보드를 만들었습니다

  • 처음부터 항목을 다 말하지 못했고, 세 번에 걸쳐 추가하면서 완성됐습니다 — 한 번에 완벽하게 설명하지 않아도 됩니다

  • AI가 "배포했다"는 제 말에 맞장구치지 않고 계정을 직접 조회해서 "여기에 없습니다" 라고 알려준 순간이 가장 인상적이었습니다

  • "암호 걸어줘"라는 요청에도 바로 답하지 않고 공식 문서를 찾아 "이 요금제로는 불가능" 을 표로 정리해줬습니다

  • 기록을 안 한 날과 "0"을 구분해달라고 했더니, 판정 기준 자체를 다시 설계해줬습니다

  • 결과물은 주소 하나(my-diary-six-sigma.vercel.app)로 끝났고, 기록은 제 브라우저에만 남습니다

🎯 이런 분들께 도움돼요

  • 시중 앱을 써봤지만 항목이 나와 안 맞거나 구독료가 부담스러웠던 분

  • 기록해야지 생각만 하고 마땅한 도구가 없어 계속 미뤄온 분

  • AI 코딩 도구로 실제로 쓸 수 있는 것까지 만들 수 있는지 궁금한 비개발자

😫 문제 상황 (Before)

제 기록은 이렇게 흩어져 있었습니다.

  • 일정은 캘린더 앱

  • 수면 시간은 스마트워치 앱

  • 혈압은 그때그때 메모장

  • 운동이나 물 마신 건 사실상 기록 안 함

각각은 잘 동작합니다. 문제는 "이번 주에 나 어땠지?" 라는 질문에 답하려면 앱 네 개를 열어 눈으로 맞춰봐야 한다는 것이었습니다. 잠을 못 잔 날에 혈압이 높았는지, 운동한 주에 컨디션이 좋았는지 같은 건 아예 볼 수가 없었습니다.

시중 건강 앱도 써봤지만 항목이 제 필요와 어긋났습니다. 어떤 앱은 혈당이 없고, 어떤 앱은 쓰지도 않는 기능이 잔뜩 있었습니다. 결국 나한테 맞는 앱이 없다는 게 결론이었고, 그렇다고 직접 만들 엄두는 나지 않아 계속 미뤄왔습니다.

🛠️ 사용한 도구

  • 도구: Claude Code

  • 모델: Claude Opus 5

  • 저장소: GitHub (비공개)

  • 배포: Vercel (무료 요금제)

  • 소요 시간: 이틀, 실제 작업은 각 1시간 안팎


🔧 작업 과정

처음부터 원하는 걸 다 말하지 못했습니다

첫 요청은 아주 단순했습니다.


내 일주일 일정이랑 건강상태 정리하는 대시보드 만들어줘

그랬더니 AI가 바로 만들지 않고 되물었습니다. 데이터를 어떻게 채울지, 건강 항목은 뭘 추적할지. 저는 다섯 가지를 골랐는데, 화면을 상상해보니 빠진 게 계속 떠올랐습니다.


혈압 당 운동 기분 전체평가

그런데 조금 더 생각해보니 수면도 필요했습니다.


위에 수면 운동 기분 식사 수분 도 합쳐서 해줘

결국 세 번에 걸쳐 항목이 늘어났고, 최종적으로 11개가 됐습니다. 수면, 혈압, 공복혈당, 체중, 운동, 물 섭취, 식사(아침·점심·저녁), 복약, 기분, 전체평가, 증상 메모.

솔직히 이 과정이 가장 답답했습니다. "내가 뭘 원하는지" 자체가 정리가 안 된 상태였으니까요. 그런데 지나고 보니 이게 자연스러운 과정이었습니다. 화면을 안 본 상태에서 필요한 항목을 다 떠올리는 건 애초에 어려운 일입니다. AI가 매번 항목을 다시 받아서 전체 구조를 새로 짜줬기 때문에, 제가 완벽하게 설명할 필요가 없었습니다.


색깔 고르는 것도 근거를 가지고 했습니다

만들어진 화면을 보고 놀란 부분이 있습니다. AI가 차트 색을 그냥 예쁜 걸로 고른 게 아니라, 색각 이상이 있는 사람도 두 색을 구분할 수 있는지 검사 도구를 실제로 돌려서 확인하고 골랐습니다.

그리고 상태 표시를 색깔만으로 하지 않았습니다. "정상"은 초록색 점, "주의"는 노란 세모, "위험"은 빨간 네모처럼 색·기호·글자를 함께 넣었습니다. 색을 구분하기 어려운 사람도 읽을 수 있게요.

여기까지는 제가 요청한 적이 없습니다. 알아서 챙긴 부분입니다.


판정 기준에 출처가 있었습니다

혈압이 130이면 괜찮은 건지 저는 모릅니다. AI는 임의로 정하지 않고 기준의 출처를 밝혔습니다.

  • 혈압 — 대한고혈압학회 진료지침 구간

  • 공복혈당 — 정상 70–99, 주의 100–125, 당뇨 범위 126 이상

  • 수면 — 성인 권장 7~9시간

  • 운동 — 세계보건기구(WHO) 권고 주 150분

그리고 화면과 설명 문서 양쪽에 "이건 참고 표시이지 진단이 아니다" 라는 문장을 넣었습니다. 수치가 계속 범위를 벗어나면 의사와 상의하라는 안내까지요.


AI가 자기가 만든 화면을 직접 열어봤습니다

이 부분이 신기했습니다. AI는 코드를 다 쓴 다음에 "완성했습니다" 하고 끝내지 않았습니다. 브라우저를 열어 실제 화면을 캡처해서 스스로 확인했습니다.

그리고 문제를 찾아냈습니다. 차트가 3열로 배치되면서 마지막 줄에 빈칸이 생긴 것, 오른쪽 영역에 어색한 여백이 남은 것. 제가 말하기 전에 발견해서 고쳤습니다.

밝은 화면과 어두운 화면, 그리고 휴대폰 크기의 좁은 화면까지 각각 확인했습니다.


"배포했는데 주소가 뭐예요?" — "배포 안 되셨는데요"

가장 인상 깊었던 순간입니다.

저는 Vercel(만든 걸 인터넷에 올려주는 서비스)에서 배포 버튼을 눌렀다고 생각했고, 주소를 물었습니다.


버셀에 배포했는데 주소가 어떻게 되는지 알 수 있어?

보통이라면 "주소는 보통 이런 형태입니다" 하고 그럴듯하게 넘어갈 수도 있었을 겁니다. 그런데 AI는 제 계정을 직접 조회하더니 이렇게 답했습니다.

배포된 대시보드가 안 보입니다. 계정에 프로젝트는 하나뿐이고, 최근 배포도 전부 7~8일 전 다른 프로젝트 것입니다.

제가 팀 주소를 알려주며 다시 확인해달라고 했더니, 또 조회해보고 결과가 같다고 했습니다. 그러면서 안 된 이유를 세 가지로 정리해줬습니다. 다른 계정으로 로그인했을 가능성, 중간에 멈췄을 가능성, 비공개 저장소라 접근 권한이 없을 가능성.

틀린 전제를 그대로 받아주지 않고 확인해서 알려준 것 — 이게 이 작업 전체에서 가장 믿음이 갔던 지점입니다.


"암호 걸어줘"에 바로 답하지 않았습니다

배포하기 전에 걱정이 됐습니다. 제 건강 기록인데 아무나 볼 수 있으면 안 되니까요. 그래서 암호를 걸 수 있는지 먼저 물었습니다.

AI는 "네" 또는 "아니요"로 답하지 않았습니다. 제 요금제를 조회해서 무료 요금제임을 확인하고, Vercel 공식 문서를 찾아 읽은 뒤 표로 정리해줬습니다.

보호 방식

무료 요금제에서

암호 보호

❌ 최상위 요금제 전용

로그인 보호

✅ 가능

주소 자체를 잠그기

❌ 유료 요금제부터

결론은 명확했습니다. 무료 요금제로는 공개 주소를 막을 방법이 없다. 다만 우회로가 하나 있다고 알려줬습니다. 정식 배포 대신 임시 배포를 쓰면 로그인한 사람만 볼 수 있다고요.

저는 공개 배포를 선택했습니다. 중요한 건, 제가 뭘 선택하는지 알고 선택했다는 것입니다. 그리고 실제로 공개되는 건 빈 화면일 뿐이고, 제가 입력한 기록은 제 브라우저에만 저장되어 남에게 보이지 않는다는 점도 확인했습니다.


자정을 넘겨 자는 걸 어떻게 계산할까

이틀째, 쓰다 보니 불편한 게 보였습니다. 수면 시간을 "7.5"처럼 숫자로 넣게 되어 있었는데, 저는 몇 시에 자고 몇 시에 깼는지로 기억하지 계산해서 기억하지 않습니다.


수면시간 기록은 몇 시에서 몇 시까지 자서 몇 시간 잤는지 계산되도록 바꾸고 싶어

여기엔 함정이 있습니다. 밤 11시 반에 자서 아침 7시에 일어나면, 단순히 빼면 마이너스가 나옵니다. 자정을 넘겼기 때문입니다.

AI는 이걸 처리하고, 여덟 가지 경우를 스스로 테스트해서 전부 통과하는 걸 보여줬습니다. 자정 넘김, 새벽에 자는 경우, 정각 자정, 분 단위(21:45 → 05:20 = 7시간 35분), 한쪽만 입력한 경우 등.

그리고 규칙 하나를 정해서 화면에 적어줬습니다. "그날 아침에 일어난 잠"을 그날에 적는다. 월요일 밤에 자서 화요일 아침에 깼으면 화요일에 기록하는 겁니다. 이런 건 안 정해두면 나중에 헷갈립니다.


기록 안 한 것과 "0"은 다릅니다

계속 쓰다 보니 거슬리는 게 있었습니다. 수면만 기록한 날인데 운동이 "0분 · 부족" 이라고 판정돼 있었습니다. 저는 운동을 안 한 게 아니라 적지 않았을 뿐인데요.


하루 기록하기 할 때 기록을 넣지 않으면 측정하지 않고 운동을 하지 않은 거니까

그냥 기록 없이 빈칸으로 남게 바꿔줄래?

AI는 이 요청을 단순히 "0을 숨겨달라"로 받아들이지 않았습니다. 계산 방식 자체를 다시 설계했습니다.

  • 운동 — 운동 기록이 하나도 없는 주는 아예 판정하지 않음. 단 0분이라고 직접 넣은 날은 "그날은 운동 안 함"이라는 기록으로 인정

  • 식사 — 끼니를 하나라도 체크한 날만 계산에 넣음

  • 복약 — 이행률(%)을 없애고 복용한 날 수로 변경

복약 부분 설명이 특히 납득이 갔습니다. 비율을 내려면 "안 먹은 날"을 알아야 하는데, 체크가 없는 날이 안 먹은 건지 안 적은 건지 구분할 수 없어서 비율 자체가 거짓말이 된다는 겁니다.

그리고 두 경우로 확인시켜줬습니다. 수면만 적은 주는 나머지가 전부 "기록 없음", 운동을 3일(60분/0분/90분) 적은 주는 "150분 · 권고 충족 · 2일 운동".


✅ 결과 (After)

Before vs After

항목

Before

After

기록 위치

캘린더, 워치 앱, 메모장에 분산

주소 하나

항목 구성

앱이 정해준 대로

내가 정한 11개

주간 흐름 보기

불가능

차트 7종 + 표

기기 간

앱마다 따로

같은 주소로 접속

비용

앱 구독료

0원

결과물

  • 주소: my-diary-six-sigma.vercel.app

  • 화면 구성: 주간 요약 10칸 / 요일별 일정 / 생활 습관 체크 격자 / 건강 추이 차트 7종 / 하루 기록 입력

  • 기록 보관: 제 브라우저에만 저장되고 서버로 전송되지 않음. 파일로 내보내고 가져올 수 있어서 기기를 옮기거나 백업 가능

솔직한 이야기

아직 몇 주 써봐야 진짜 효과를 알 수 있습니다. 도구는 완성했고 배포도 끝났지만, "주 몇 시간 절약했다" 같은 걸 말하기엔 이릅니다. 지금 확실한 건 흩어져 있던 게 한 곳에 모였다는 것, 그리고 앱이 정해준 항목이 아니라 제가 필요한 항목으로 구성됐다는 것입니다.

한 가지 더 솔직하게 적자면, 일정 채우기는 아직 못 했습니다. AI가 제 실제 일정을 알 수 없으니 지어내지 않고 비워둔 채 저에게 물었고, 저는 아직 답을 안 했습니다. 이것도 저는 오히려 좋았습니다. 그럴듯한 가짜 일정으로 채워놨다면 그게 더 곤란했을 테니까요.

💬 이 과정에서 배운 AI 활용 팁

효과적이었던 것

  1. 한 번에 완벽하게 설명하려 애쓰지 마세요. 저는 항목을 세 번에 걸쳐 추가했습니다. 화면을 안 본 상태에서 필요한 걸 다 떠올리는 건 원래 어렵습니다. 일단 시작하고 보면서 채우는 게 훨씬 빠릅니다.

  2. "왜 그렇게 했는지" 물어보세요. 복약을 비율 대신 날짜 수로 바꾼 이유를 설명해줬을 때 비로소 납득했습니다. 결과만 받으면 나중에 내가 고칠 수가 없습니다.

  3. 불편한 걸 그때그때 말하세요. "0분 부족"이 거슬린다고 말한 게 판정 방식 전체를 개선하는 계기가 됐습니다. 사소해 보여도 말하면 구조가 바뀝니다.

  4. 결과를 확인했는지 물어보세요. 이번엔 AI가 알아서 브라우저를 열어보고 테스트를 돌렸지만, 안 한다면 "실제로 열어서 확인해줘"라고 요청하면 됩니다.

이렇게 하면 안 돼요

  1. 내 기억을 사실처럼 말하지 마세요. 저는 "배포했는데"라고 단정했지만 사실 안 되어 있었습니다. AI가 확인해줘서 다행이었지, 그대로 진행했으면 한참 헤맸을 겁니다. "배포한 것 같은데 확인해줄래?"가 더 좋은 표현입니다.

  2. "안전하게 해줘" 같은 막연한 요청은 피하세요. "암호 걸어줘"라고 했지만 제 요금제로는 불가능했습니다. 무엇으로부터 지키고 싶은지 말하면 가능한 선택지를 정리해줍니다.

  3. 공개 여부를 확인하지 않고 배포하지 마세요. 제 저장소는 처음에 공개 상태였습니다. AI가 발견해서 알려주지 않았다면 모르고 지나쳤을 겁니다. 개인 기록이라면 반드시 확인하세요.

🌍 다른 업무에 적용한다면?

핵심은 "건강 기록"이 아니라 흩어진 걸 내 기준으로 한 화면에 모으는 것입니다.

  • 업무 일지 — 여러 프로젝트 진행 상황을 주 단위로 모아 보기

  • 가계부 — 시중 앱이 안 맞는 항목만 골라 직접 구성

  • 가족 건강 관리 — 부모님 혈압·복약을 대신 기록하고 병원에 보여줄 표로 뽑기

  • 학습 기록 — 공부 시간, 집중도, 컨디션의 관계 보기

시중 앱이 미묘하게 안 맞아서 안 쓰게 된 게 있다면, 그게 후보입니다.

🚀 앞으로의 계획

휴대폰에서 더 편하게 쓰는 것이 우선입니다. 화면은 이미 휴대폰 크기에 맞게 접히도록 만들어져 있지만, 매일 열어야 하는 도구인 만큼 홈 화면에서 바로 열리게 하고 입력 과정을 더 줄이고 싶습니다.

기록이 브라우저마다 따로 저장되는 것도 손봐야 할 부분입니다. 지금은 파일로 내보내고 가져와야 하는데, 휴대폰과 노트북이 같은 기록을 보게 만들면 훨씬 편할 것 같습니다.

📋 재사용 가능한 프롬프트

프롬프트 1: 나에게 맞는 기록 화면 만들기

[기록하고 싶은 것]을 정리하는 대시보드를 만들어줘.

나는 개발자가 아니니까 어려운 용어는 풀어서 설명해줘.

시작하기 전에 나한테 이걸 먼저 물어봐줘:

  • 어떤 항목을 기록할지

  • 데이터를 어떻게 넣을지 (직접 입력 / 파일에서 읽기)

만든 다음에는 실제로 브라우저로 열어서 화면이 제대로 나오는지 확인하고,

문제가 있으면 고쳐줘. 휴대폰 크기 화면도 확인해줘.

프롬프트 2: 판정 기준의 출처 요구하기

이 화면에 "정상 / 주의 / 위험" 같은 판정을 넣을 때,

기준을 임의로 정하지 말고 공신력 있는 출처를 찾아서 적용해줘.

어떤 기준을 썼는지 화면과 설명 문서 양쪽에 밝혀줘.

그리고 이건 진단이 아니라 참고용이라는 안내도 넣어줘.

프롬프트 3: 내 말이 사실인지 확인시키기

[내가 한 줄 알았던 작업]이 실제로 되어 있는지 확인해줘.

내 기억이 틀릴 수 있으니까 추측하지 말고 직접 조회해서 알려줘.

안 되어 있으면 안 되어 있다고 그대로 말해줘.

프롬프트 4: 기록 안 한 것과 0 구분하기

내가 값을 넣지 않은 항목은 0으로 계산하지 말고 빈칸으로 남겨줘.

안 적은 것과 "0이라고 적은 것"은 다른 의미야.

요약이나 평균을 낼 때도 실제로 기록한 날만 계산에 넣어줘.

1
1개의 답글
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 아침,
읽고 바로 써먹을 AI 소식만