AI와 함께 떠나는 시간 여행, 추억 사진관 웹앱
AI와 함께 떠나는 시간 여행, 추억 사진관 웹앱
안녕하세요! 여러분의 사진 한 장을 대한제국 시대의 황실 사진부터 2000년대 싸이월드 감성 사진까지, 다양한 시대의 모습으로 바꿔주는 토이 프로젝트, 추억 사진관을 소개합니다. 이 프로젝트를 만들게 된 계기와 과정, 그리고 사용된 기술에 대해 이야기해보려고 합니다.
🤔 왜 만들었을까? (기획 동기)
“만약 내가 100년 전에 태어났다면 어떤 모습이었을까?”
빛바랜 흑백 사진 속 인물들은 그 시대의 분위기를 고스란히 담고 있습니다. 최신 AI 이미지 생성 기술을 이용하면, 현재의 내 사진을 과거의 특정 시대 스타일로 재현해볼 수 있습니다. 마침 구글 AI 스튜디오에 이와 비슷한 컨셉의 웹앱들이 소개되고 있었습니다. 나노 바나나에게 접목하는 프롬프트에 주의하면서 보다 한국의 문화와 시대상을 잘 반영하는 사진들을 출력하는 것이 주요 포인트입니다.
단순히 오래된 느낌을 내는 필터를 넘어, 한국의 각 시대를 대표하는 의상, 분위기, 사진 기술까지 반영하여 정말 그 시대로 시간 여행을 떠나는 듯한 경험을 제공합니다.
✨ 주요 기능
‘추억 사진관’은 다음과 같은 기능을 제공합니다.
- 간편한 사진 업로드: 변환하고 싶은 사진을 한 장만 올리면 준비 끝!
- 8가지 시대별 스타일: 대한제국부터 2000년대까지, 한국 근현대사의 8가지 특징적인 시대를 선택하여 사진을 생성할 수 있습니다.
- 대한제국 황실
- 일제강점기 그림엽서
- 1920년대 경성 모던
- 1950년대 전후 흑백
- 1970년대 새마을 운동
- 1980년대 졸업 사진
- 1990년대 스티커 사진
- 2000년대 싸이월드 감성
- 결과물 확인 및 다운로드: 생성된 8장의 사진을 한눈에 보고, 마음에 드는 사진을 개별적으로 저장하거나 전체를 ZIP 파일로 한 번에 다운로드할 수 있습니다.
🛠️ 어떻게 만들었을까? (개발 과정 및 기술 스택)
이 프로젝트는 별도의 백엔드 서버 없이 프론트엔드만으로 동작하도록 설계했습니다. 모든 이미지 생성 요청은 사용자의 브라우저에서 Google Gemini API로 직접 전송됩니다.
-
핵심 기술: Google Gemini API (
gemini-2.5-flash-image-preview
) 이 프로젝트의 핵심 모델인 나노 바나나 모델입니다. 텍스트 프롬프트와 이미지를 동시에 입력받아 새로운 이미지를 생성하는 멀티모달(Multimodal) 기능을 활용했습니다. -
프론트엔드:
HTML
,Tailwind CSS
,Vanilla JavaScript
초기에는 React로 프로토타입을 만들었지만, 간단한 기능과 빠른 구현을 위해 순수 JavaScript 기반의 정적 웹사이트로 전환했습니다. Tailwind CSS를 사용하여 빈티지하고 고풍스러운 디자인을 빠르게 구현할 수 있었습니다. -
라이브러리:
JSZip
생성된 모든 이미지를 클라이언트 사이드에서 ZIP 파일로 압축하여 다운로드하는 ‘모두 저장하기’ 기능을 위해 사용했습니다.
💡 가장 고민했던 부분: ‘프롬프트 엔지니어링’
각 시대의 특징을 AI가 정확히 이해하고 표현하도록 만드는 ‘프롬프트’를 작성하는 것이 가장 중요하고도 어려운 작업이었습니다.
단순히 “1980년대 스타일”이라고 요청하는 대신, 다음과 같이 구체적인 디테일을 추가했습니다.
(1980년대 졸업 사진 프롬프트 예시)
“An 1980s South Korean graduation album style studio portrait… The photo should have a soft, hazy lighting effect and a plain, classic studio backdrop… The pose should be formal but slightly awkward…”
또한, AI가 임의로 텍스트(특히 한글)를 이미지에 추가하는 것을 막기 위해 "The image must not contain any text or letters."
와 같은 부정 프롬프트(Negative Prompt)를 모든 프롬프트에 포함하는 것이 핵심이었습니다.
🚀 마치며
‘추억 사진관’은 AI의 놀라운 이미지 생성 능력을 활용하여 과거와 현재를 잇는 재미있는 경험을 만들어보자는 생각에서 시작된 프로토타입입니다. 제 사진이 1920년대 모던 보이처럼, 또는 90년대 잡지 모델처럼 변하는 것을 보며 저 스스로도 무척 즐거웠습니다.
개인 API 키를 입력해야 하는 번거로움이 있지만, AI를 활용한 사이드 프로젝트에 관심 있는 분들께 좋은 예시가 되었으면 합니다.
프로젝트를 직접 체험해보거나, 전체 코드를 확인하고 싶으시다면 아래 링크를 방문해주세요.
- 🌐 라이브 데모: https://nostalgia-photo-studio.netlify.app/
- 🔗 GitHub 저장소: https://github.com/tigerjk9/nostalgia-photo-studio/tree/main
- 🌐 나노 바나나 프롬프트 참고: https://tigerjk9.github.io/ai/nano-banana/