Pumpkids
pumpkids.jhproject.cloud공공 관광데이터를 엮어 여행 코스를 추천해주는 서비스. 2026 관광데이터 활용 공모전 웹·앱 구현 부문 출품작으로 만들었습니다. 세션 기반 인증에 LLM 추천을 붙였어요.
전부 실제로 떠 있는 서비스입니다. 카드를 누르면 바로 이동해요.
공공 관광데이터를 엮어 여행 코스를 추천해주는 서비스. 2026 관광데이터 활용 공모전 웹·앱 구현 부문 출품작으로 만들었습니다. 세션 기반 인증에 LLM 추천을 붙였어요.
중고 바이크 거래·경매 플랫폼. 매물 등록과 실시간 경매, 딜러 관리, PG 결제까지 붙어 있습니다. WebSocket으로 알림·채팅·접속 상태를 실시간 처리하고, 정산과 집계는 Celery가 백그라운드로 돌려요.
멀티테넌트 화이트라벨 쇼핑몰. 브랜드 한 줄을 추가하면 새 쇼핑몰이 서는 구조로 만들었습니다. 코드 수정 없이 로고·색·약관·메뉴·정책이 전부 데이터로 갈립니다. 스토어프론트와 관리자를 별도 SPA로 분리했어요.
둘러보실 수 있게 데모 계정을 열어뒀습니다.
관리자 admin@shoppuda.local · 일반 user@shoppuda.local
비밀번호는 둘 다 shoppuda1234!
6축 로봇 팔과 스마트팜 환경을 브라우저에서 관제하는 서비스. 기존 tkinter 시뮬레이터를 웹으로 옮기면서 FK/IK·모터 모델 계산은 파이썬 코드를 그대로 재사용했습니다. 폰 카메라를 WebRTC로 송출해 다른 기기에서 실시간으로 볼 수 있어요.
주로 이런 것들로 만듭니다.
네 개 서비스가 한 대에서 어떻게 갈라지는지. 인증서 발급·갱신은 Caddy가 알아서 합니다.
인터넷 :80 / :443
│
▼
┌───────────┐
│ Caddy │ TLS 종료 · Host 헤더로 분기 · 인증서 자동 발급
└─────┬─────┘
│
├─ jhproject.cloud → 소개 페이지 (정적)
├─ pumpkids.jhproject.cloud → Pumpkids · Django + React
├─ motor.jhproject.cloud → ProjectM · Django + Celery + WebSocket
├─ shop.jhproject.cloud → Shoppuda · Django + SPA 2개
├─ shop-admin.jhproject.cloud → Shoppuda 관리자
└─ smartfarm.jhproject.cloud → SmartFarm · FastAPI + WebRTC
각 스택은 독립된 Docker Compose 프로젝트입니다.
앱 · PostgreSQL · Redis · 백그라운드 워커가 스택마다 따로 돌고,
호스트의 80/443 은 Caddy 컨테이너 하나만 점유합니다.