안녕하세요. 취미로 가끔씩 DIY 프로젝트를 진행하고 클리앙에 그 제작내용을 공유하고 있습니다.
- 바이브코딩에 대한 호기심으로 앱을 만들었습니다.
- 실내환기가 중요해서 카나리아 CO2센서를 만들었습니다. (feat.Claude)
- 라즈베리파이를 이용해 오락실 게임기 제작하기
- 없어서 다시 만들었습니다. 아두이노 한글시계

AI로 인한 '대-기획자(Architect)'의 시대...
바이브코딩의 단순한 호기심으로 첫 번째 앱 FEVER2048을 출시 했었습니다.
비개발자로서 기획부터 출시까지 스스로 완성했다는 확신이 큰 수확이었고, 자연스럽게 두 번째 프로젝트를 준비하게 되었습니다.
이번에는 프로젝트 과정에서 기획자가 바이브코딩으로 성공적인 앱 출시를 하기위해 'Claude와 친해지는 과정(?)'을 공유해봅니다.
3줄 요약
- 소설, 영화, 노래에서 감동받은 문장이 시간으로 표현되는 앱을 만들었습니다.
- 바이브코딩의 완성, 나만의 규칙으로 먼저 잘 정의하는 것에 달려있습니다.
- 7일 무료체험. 써보신 분의 솔직한 평가가 1인 개발자에겐 가장 큰 힘입니다.

이 앱의 아이디어...
"1955년 11월 2일 오전 10시 4분, 번개가 시계탑을 칠 거야!" - 백 투 더 퓨처
백 투 더 퓨처의 상징과도 같은 이 대사는 단순한 시간 표현을 넘어서, 미래로 돌아가는 실마리이자 영화의 클라이막스가 되는 순간입니다.
시간의 단순한 숫자표시가 아닌, 그 시간 자체가 하나의 사건이 되는 순간. 특정 시각이 이렇게 극적으로 살아있는 소설과 영화, 음악들에 녹아든 문장들이 있다면, 그 문장으로 시간을 채우는 앱을 만들 수 있지 않을까? 하는 생각이 들었습니다.

그렇게 두 번째 앱을 구상하던 중 문득 이 대사가 떠올랐습니다.
그리고 예전에 한글시계를 만들면서 느꼈던 그 감각과 정확히 겹쳐왔습니다.
5분의 여백을 한글이라는 감성으로 채운다는 것. 정보가 아닌 감각으로 시간을 인식하게 되는 순간을 공유해보자!
이런 생각이 들어 아이디어를 구체화했습니다.
출근길 카페 — 오전 8시 40분, 서점의 한 켠 — 오후 5시 30분, 도서관 창가 — 밤 9시.
이렇듯 우리는 늘 시계를 봅니다. 그러나, 정보로서의 숫자는 정확하지만 그 시간이 무엇인지, 무엇을 의미하는지는 말해주지 않습니다. 반면 누군가는 이미 그 시간을 살았고, 그 순간을 문장으로 작품 속에 남겼습니다.
- "이 순간 시계는 8시 40분을 가리켰다. / 5분 더, 앤드류 스튜어트가 말했다." - 80일간의 세계일주
- "오후 9시 … 서로와의 거리는 단 0.01cm 였고, 57시간 후 나는 이 여자를 사랑하게 된다. " - 중경삼림
카페에서, 서점에서, 도서관에서. 숫자 대신 문학의 언어로 시간이 흐르는 공간.
그 공간은 분명 특별하게 변할 것입니다. 그게 이 앱의 시작이었습니다.


개발은 절대 'AI딸깍'으로 만들어 지지 않더라구요. 삽질은 이제 그만!
FEVER2048 때 Claude와 단순 문답으로 진행하다 보니 어느 순간 기획 의도와 다른 방향으로 흘러가버리곤 했습니다.
맥락이 없으면 아무리 좋은 AI도 길을 열심히만(!)파더군요. 엉뚱한 방향으로 ㅠ ㅜ
그래서 이번엔 본격적인 코드 작성에 앞서 나만의 규칙을 먼저 정의했습니다.
- ① Claude AI 프로젝트에서 기획·정책 먼저 확정 — 개발 도중에 정책과 방향성이 바뀌다 결국 git 원복... 이제는 맥락이 유지되고 모든 결정이 기록으로 남습니다.
- ② 확정된 정책은 옵시디언에 .md로 아카이브 — 구독 정책, 인용구 분류 기준, UX 원칙까지 대화로 결정된 내용은 .md 파일로 정리해 옵시디언의 vault에 저장합니다. 기억은 흐릿해집니다. 이젠 개발 후반부에도 초반 기획 의도가 흔들리지 않았습니다.
- ③ 코딩은 Claude Code + claude.md 자동 작업진단 — 처음부터 구조를 잡고 들어가니 디버그 지옥이 훨씬 짧았습니다.
특히, 수정 후 '자동진단' 요청으로 반복수정 작업이 현저히 줄어들었습니다. 그 전에는 '하~ 그거 말고, 수정된거 맞아?'의 반복이었죠.... - ④ 옵시디언 문서를 symlink로 프로젝트 폴더에 연결 — 새로운 기능과 정책을 제시할 때 Claude Code가 코딩 중 기획 문서를 참조합니다. "기존 정책과 충돌한다"는 걸 짚어낼 순간이 있었습니다.
결국 AI가 잘 작동하려면 사람이 먼저 부지런히 잘 정의해야 하더라구요.
보다 자세한 내용은 아래 블로그 전문을 확인해주세요. → 미디엄 전문 보기

'나의 시간이 예술이 된다.
이 앱은 시간이 언급된 문학·영화·음악의 순간을 소개하는 ‘큐레이션 앱’ 입니다.
앱에서는 컨셉에 맞게 시간을 예술의 언어로 채우는 유니크함을 오롯이 전달하고 싶었습니다.
앱 이름도 단순 기능 중심이 아닌, 사용자의 입장에서 '나의 시간이 예술이 된다'로 다소 긴 문장형으로 정했습니다.
- 소설, 한국고전, 영화·드라마·음악 속 1,700여 개의 인용구가 하루 1,440분, 지금 이 시간에 맞게 바뀝니다. 매 분마다 다른 문장이 뜨는 구조입니다.
- 카페 테이블 위 아이패드, 서점 한쪽 벽면 디스플레이, 어디에 올려두든 그 공간이 달라집니다. 공간 인테리어를 위한 아이패드 디스플레이도 지원합니다. 홈화면·잠금화면 위젯과 스탠바이 모드를 지원하는 이유입니다.
- 실제 문학 인용구로 채웠기 때문에 아직 비어있는 시간대도 다수 존재합니다. 없는 걸 있는 척하지 않고 Find Hour로 표기합니다. 채워지지 않은 시간은 앞으로 꾸준히 채워나갈 시간입니다. Firebase로 앱 업데이트 없이 인용구가 계속 추가됩니다.


7일 무료체험을 제공하고 있으니 한번 사용해보세요.
이후에도 계속 사용하고 싶으신 분은 사용 소감과 함께 댓글로 남겨주시면, 5분을 선정해서 구독 코드를 보내드리겠습니다.
써보신 분의 솔직한 평가가 1인 개발자에겐 가장 큰 힘이 됩니다.
감사합니다.


PS.
대한민국에서 단 1원이라도 유료 판매를 하려면 개인사업자 등록부터 통신판매업 신고까지 국내의 행정 허들이 만만치 않습니다.
불만은 많았지만 어쨌든, 돌파했습니다. 이 부분에 대한 생각은 따로 정리해뒀습니다.
→ 왜 정부 창업 지원은 공모전에만 집착할까 - '모두의 창업'이 놓친 것들
소설뿐 아니라 영화,드라마,노래, 그리고 역사적인 사실까지 총 동원했어요. 고생을 알아봐주시니 감동입니다.
사용해보고 싶은데 안드로이드판도 계획이 있으신가요?
개발 초반에는 안드로이드오 고려했었는데, 텍스트 인코딩품질이 iOS에 비해 떨어지고, 위젯 개발 환경이 불안정해서 우선 iOS에 집중했습니다.
기본 베이스는 준비된 상태이니 추후 요구가 많아지면 AOS로도 진행하려합니다.
우선 저작권만료된 고전작품을 위주로 찾아 프로토타이핑을 진행했어요. 그 이후는 지인추천과 웹서핑 무한 반복...
이 앱은 시간이 언급된 문학·영화·음악의 순간을 소개하는 '큐레이션 앱'입니다.
저작권에 대해서는 신중하게 접근하고 있으며,
모든 인용은 출처를 명시하고 원작의 극히 일부만 사용하고 있습니다.
그럼에도 저작권자의 요청이 있을 경우, 즉시 삭제 조치할 계획입니다.
huhuhuhu님을 자극(?)할 다음 프로젝트를 어서 기획해야겠네요~
자극을 받았는데 사용하지 못하신다니 정말 아쉽습니다. 이 앱의 사용자가 많아지면 꼭 AOS를 진행하겠습니다.
안녕하세요!
올려주신 제작기 정말 몰입해서 읽었습니다. 무엇보다 앱 이름부터가 정말 기가 막히네요. '나의 시간이 예술이 된다'라는 문장형 이름이 주는 울림이 벌써부터 감성을 자극합니다.
사실 우리는 시계를 단순히 '다음 일정을 확인하는 기계적 도구'로만 소비해 왔잖아요. 그런데 이 앱은 시간을 숫자가 아닌 문학적 감성으로 뚫고 들어와 마음을 채워주는 느낌입니다. 8시 40분을 볼 때 문득 소설 속 주인공의 문장을 마주하게 된다면, 무미건조했던 출근길이나 일상의 순간이 정말 예술로 변할 것 같아요.
1인 개발자로서 기획부터 정책 정의까지 꼼꼼하게 챙기시는 '대-기획자'의 면모에 감탄하고 갑니다.
제 일상의 빈칸도 이 앱의 문장들로 채워보고 싶네요!
째깍째깍이 아닌 한글 한글 감성이 전하는 시간의 흐름을
주변에 소개했을 때도, 앱 이름에서 절반은 먹고(?) 들어 가더라구요 :)
예전에 제작한 5분단위의 한글시계도 이 감성이 좋았더랬습니다.
이걸로 수익을 얻으시면 저작권 걸립니다.
몇년전부터 유사한 앱들이 모두 사라진 이유가 있습니다. 출처 달았다고 끝나는 문제는 아니거든요...
말씀하신 앱과 컨셉은 유사하게 보이겠지만, 기능과 UI에 있어서 한글이 주는 유니크한 감성에 촛점을 맞춰 개발을 진행했습니다.
언급하신 저작권 부분에 대해 신중히 접근하고 있습니다.
AI덕분에 개발의 목마름을 즐겁게 해소하고 있습니다.
제가 아쉽네요 ㅠ 주변에라도 많이 알려주세요 ㅠ
AI덕분에 좀 더 유니크하고 디테일하게 개발을 도전할 수 있게 되어 즐겁습니다~.
평소 개발 폴더에 확정된 기획문서 md 파일, 진행상황 md 파일 최신 버전으로 유지해가면서 개발하고 있는데요.
혹시, "확정된 정책은 옵시디언에 .md로 아카이브" -> "옵시디언 문서를 symlink로 프로젝트 폴더에 연결" 이렇게 우회적으로 외부에 저장해두는 것의 잇점은 무엇이 있을까요??
우회적으로 외부에 저장하는 이유는 간단합니다.
1) 마케팅/정책 정의 문서와 개발코드를 분리하려고 합니다. 그래야 git으로 순수 개발 코드만 깔끔하게 이력관리가 가능하거든요.
2) claude code 가 개발코드에만 집중해야 하는데, 간혹 md 문서를 정확히 지정하지 않았을 때, 정책정의문서까지 모두 탐색을 하는 경우가 있더라구요.
예를 들어 flutter 폴더에 readme.md 로 진행사항 체크리스틀 업데이트하고 개발을 들어갈 때마다 '다음 개발을 진행해보자'라고 하면 readme.md 만을 체크하지만, flutter 폴더에 다른 문서까지 섞여 있으면 *.md를 모두 검색하더라구요. 물론 claude.md에서 사전정의를 할 수도 있지만, claude.md의 정의는 최소한 유지를 원칙으로 하고 있습니다.
그래서 symlink로 외부폴더를 연결해두고, 필요할때만 "~payment.md 문서에서 정의한 환불/구독복구 정책을 구현하자"라고 하는게 저는 더 효율적이었습니다.
그리고 옵시디언 valult로 연결한 이유는, MD포맷의 장점과 함께 icloud와 연동해서 노트북-아이폰과 싱크로 언제든지 문서를 업데이트 할 수 있어서 입니다.
다른분들이 이 조합으로 사용하시는것으로 보고 저 나름대로의 원칙으로 정의해서 사용하고 있습니다.
그동안 '아이디어'에 대부분 머물렀는데, AI 덕분에 구현할 수 있는 세상이라 즐겁습니다.
AI, 바이브코딩 덕분에 아이디어를 구현할 수 있는 세상이네요. 즐겨보려구요 :)