진행 중 · 2026년 5월 25일
Meta Smart Glass — English Assistant
워홀 한국인을 위한 실시간 영어 어시스턴트. Meta Ray-Ban Display 대상. iPhone 앱 + Bun 백엔드 + Gemini vision; Display SDK 접근 대기 중 Mock Device Kit으로 빌드.
Bun + Swift · YOLO11 on-device · 3-provider key-gated fallback · early-stage
- 역할
- Solo
- 스택
- Swift / iOS · Bun · Node.js · Gemini 2.5 Flash (vision) · BLE · Mock Device Kit
워홀로 외국 나가있는 한국인을 위한 웨어러블 영어 어시스턴트. 글래스로 간판·메뉴·앞에 있는 사물을 보면 실시간으로 라벨링·번역·문장 제안을 띄움 — 손 안 쓰고, 조용히.
무엇을 하는가 (Phase 1, 진행 중)
- Scan & translate — 카메라로 인쇄된 글자 보면 글래스 display에 번역 오버레이.
- Live camera scan — 연속 객체 인식; 보고 있는 게 뭔지 모델이 라벨링.
- Look (object labeling) — point-at-something 워크플로: 탭으로 프레임 잠그고 영어 라벨 + 예문 받음.
- Suggest endpoint — 대화 중에 막혔을 때 "다음에 뭐라고 하지" 맥락-aware 제안.
- iPhone bridge — 글래스 ↔ BLE ↔ iOS 앱 ↔ HTTPS ↔ 백엔드 ↔ LLM; 폰이 뇌, 글래스가 surface.
아키텍처
[Meta Ray-Ban Display] <-BLE-> [iPhone 앱] <-HTTPS-> [Bun 백엔드] -> [Gemini 2.5 Flash]Meta Wearables SDK 승인 대기 동안 Mock Device Kit이 실제 글래스 자리에 대신 들어가 있어서, iOS + 백엔드 경로는 글래스 없이도 전체 검증 가능.
왜 만드는가
워홀 비자로 한국에서 토론토로 넘어온 뒤, 주변 한국인들에게서 똑같은 마찰을 봄: 집에서 영어 읽는 것과 현장에서 영어 쓰는 것은 다른 근육이다 — 카운터 앞, 버스 안, 즉흥 대화 중. 손과 시선이 다른 데 가있는 그 순간 전통 앱은 안 도와줌. 글래스는 가능함.
아직 안 한 것
- Display SDK 접근 아직 없음. Phase 1은 Mock Device Kit 위 검증 프로토타입. 실제 글래스 통합은 Phase 2.
- 온디바이스 추론 없음. LLM 호출은 네트워크 너머 Gemini로 — 검증해야 할 레이턴시 목표지 숨겨진 제약은 아님.
- 프라이버시 경계 미정. 어떤 오디오/비디오가 기기 밖으로 나가는지, 무엇이 보존되는지, 무엇이 redact되는지 — 로드맵 다음 페이지의 설계 결정이지 v1에 없음.
상태
Phase 1 — Validation. 백엔드 엔드포인트 + iOS 스캐폴드 + Mock Device Kit으로 4개 유저 플로 동작. 다음: 실제 글래스 프로토타입, 레이턴시 예산, 프라이버시 모델.
프로젝트 로그
이 프로젝트를 만들면서 남긴 트러블슈팅 · 회고 · 업데이트의 시간순 기록.
2026년 5월 25일 주8 개 · 1 업데이트 · 7 기술 회고
Look: 보이는 사물을 영어로 — 실기기 아이폰에서 작동
기술 회고2026년 5월 31일 · 3 분
텍스트 번역에서 진짜 차별 기능으로 피벗 — 장면을 보면 각 사물의 영어 이름 + 한국어 뜻. Gemini 비전으로, 실기기 아이폰에서 end-to-end 작동.
Phase 1 기능: /api/suggest end-to-end (GPT-4o-mini → Claude Haiku fallback)
기술 회고2026년 5월 30일 · 3 분
첫 실제 제품 기능 — 프로바이더 fallback이 있는 백엔드 영어 코칭 제안 엔드포인트 + 이를 구동하는 SwiftUI 클라이언트. API 키 경계 전까지 검증 완료.
Gemini를 (무료) primary 프로바이더로 — 첫 실제 end-to-end 응답
기술 회고2026년 5월 30일 · 2 분
무료 티어 Gemini 프로바이더를 추가해 suggest/translate가 드디어 실제 출력. 함정은 Gemini 2.5 Flash의 기본 thinking이 토큰 예산을 먹은 것.
Scan용 라이브 카메라 소스 — 그리고 Swift 6 strict concurrency 씨름
기술 회고2026년 5월 30일 · 3 분
Scan의 두 번째 소스로 라이브 AVFoundation 카메라 추가(PhotosPicker와 병행), 같은 OCR→번역 파이프라인에 연결. 진짜 일은 AVFoundation을 Swift 6 strict concurrency에서 컴파일시키는 거였음.
Scan & Translate: Vision OCR → /api/translate, 그리고 메타 글래스 현실 점검
기술 회고2026년 5월 30일 · 5 분
두 번째 Phase 1 기능 — 메뉴/표지판 온디바이스 OCR → 한국어 번역 — 그리고 메타 글래스가 이걸 실제로 돌릴 수 있는지 알아본 결과.
Phase 1 프로토타입 스캐폴드: Bun /health 백엔드 + SwiftUI mock 글래스 HUD
기술 회고2026년 5월 28일 · 2 분
첫 실제 스캐폴드 — /health만 노출하는 Bun 백엔드 + 그걸 폴링해서 mock 글래스 HUD로 그리는 SwiftUI 앱. LLM/STT/Vision과 Meta SDK는 계획으로만 잡혀 있고 아직 미배선.
리포지토리 초기화
업데이트2026년 5월 26일 · 1 분
첫 커밋 — repo는 README만 있는 상태로 시작, 진짜 Phase 1 스캐폴드는 이틀 뒤에 들어옴.
스택·범위 결정: Swift 네이티브, iOS 우선, 클라우드 LLM 우선
기술 회고2026년 5월 25일 · 2 분
스마트글래스 영어 어시스턴트의 기반 스택과 범위를 확정 — Swift 네이티브 iOS, 로컬보다 클라우드 LLM 우선, 하드웨어 구매 대신 Mock Device Kit.