2026.02 ~
2026.03 App Store 정식 출시 · 2026.05 v1.1.0 배포
기획부터 스토어 배포·운영까지 1인 개발.
소개
냉장고 식재료를 사진으로 기록해 음식물 낭비를 줄이는 모바일 앱입니다. 서버 없이 기기 로컬 스토리지만 사용하는 완전 프라이빗 아키텍처로, 찍고 닫는 2초가 전부입니다.
한국에서 한 해 버려지는 음식물 쓰레기는 약 500만 톤, 처리 비용만 8천억 원이 넘습니다. 그 중 가장 단순한 원인 — 있는 것을 몰라서 버리는 낭비 — 하나에만 집중했습니다.
복잡한 카테고리 분류도, 레시피 연동도 없습니다. 행동을 바꾸는 가장 확실한 방법은 마찰을 없애는 것입니다. 사진 한 장이 냉장고 뒤편의 식재료를 기억하게 합니다.
삭제해도 3초 안에 되돌릴 수 있습니다.모든 사진과 데이터는 기기 내에만 저장되며, 서버로 전송되지 않습니다. 계정도, 인터넷 연결도 필요 없습니다.
“매주 버려지는 식재료 하나를 줄이는 것이 선함의 시작입니다.”
한국에서 한 해 버려지는 음식물 쓰레기는 약 500만 톤, 처리 비용만 8천억 원이 넘습니다. 그 원인 중 가장 단순한 것은 기억하지 못해서 버리는 낭비입니다. 냉장고 안이 보이면, 사지 않아도 될 것을 사지 않게 됩니다.
선함연구소의 슬로건 “선함의 데이터화”—거창한 운동이 아니라, 측정 가능한 작은 행동의 축적—을 일상 속에서 실험하기 위해 기획했습니다.
2026년 3월 iOS App Store 정식 출시, 같은 해 5월 v1.1.0을 배포했습니다.
남았던가 (Turborepo 모노레포)
├── apps/native — React Native + Expo 모바일 앱 (iOS / Android)
└── apps/landing — Astro 정적 랜딩 페이지서버 없는 로컬 전용 아키텍처입니다. 모든 데이터는 기기 내 SQLite와 파일 시스템에만 저장되며, 계정 생성이나 네트워크 연결 없이도 완전히 동작합니다.
식재료를 직접 촬영하거나 갤러리에서 선택해 저장합니다. 사진에 코멘트(예: “반 썼음”, “오른쪽 선반”)를 추가하고, 커스텀 카테고리(채소·육류·유제품 등 직접 생성)로 분류할 수 있습니다.
| 보기 방식 | 설명 |
|---|---|
| 그리드 뷰 | 사진 중심 3컬럼, 냉장고 속을 보는 느낌 |
| 리스트 뷰 | 텍스트 + 코멘트 중심, 빠른 스캔 |
정렬은 최신 등록순 / 오래된 순을 지원합니다.
카드를 드래그하면 쓰레기통 아이콘이 나타나고, 올려놓으면 삭제됩니다. 삭제 직후 3초간 되돌리기 Snackbar가 표시되어 즉시 복원할 수 있습니다.
롱프레스 시 iOS 홈 화면 스타일의 wobble 애니메이션이 적용되며, 삭제 버튼이 노출됩니다.
15개 식재료 이름이 overshoot 이징으로 순환되는 헤더 애니메이션. “있는 것을 기억하라”는 서비스 정체성을 진입부터 표현합니다.
| 레이어 | 기술 |
|---|---|
| 모바일 앱 | React Native, Expo SDK 55, TypeScript, Expo Router |
| 로컬 DB | Expo SQLite |
| 이미지 저장 | expo-file-system |
| 상태 관리 | Zustand v5 |
| 애니메이션 | react-native-reanimated, react-native-gesture-handler |
| 랜딩 페이지 | Astro v5, Tailwind CSS v4 |
| 모노레포 | Turborepo, Bun |