Hydrogen
Commerce primitives for you and your coding agents. Add cart, products, money, and accounts to the framework you already use.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
디시 러닝 갤러리의 러닝화 라인업 표를 정적 웹앱으로 정리한 MVP입니다. 2024년 8월부터 2026년 5월까지의 분기별 추천표를 앱에서 탐색하기 좋게 정리했습니다. 운영 배포는 Vercel이 담당합니다. GitHub Pages는 비활성화했으며, main에 push하면 Vercel이 자동 배포합니다. 일반 작업에 브라우저 로그인은 필요하지 않습니다. • Production target: Vercel 프로젝트 runfit-lineup • Source: GitHub pkkong/running-shoes • 데이터: Git에서 관리하는 정적 데이터로 운영합니다. Supabase 도입은 보류했으며 연결 설정이나 로그인이 필요하지 않습니다. • 런리핏 실점수 10개 모델: 출처·확인일·저장 방식은 점수 데이터 안내 참고. 브라우저에서 index.html을 직접 열면 정적 fallback으로 동작합니다. Vercel 서버리스 API까지 함께 확인하려면 로컬 Vercel-like 서버를 사용합니다.檢視完整 README ↗
디시 러닝 갤러리의 러닝화 라인업 표를 정적 웹앱으로 정리한 MVP입니다. 2024년 8월부터 2026년 8월까지의 분기별 추천표를 앱에서 탐색하기 좋게 정리했습니다.
운영 배포는 Vercel이 담당합니다. GitHub Pages는 비활성화했으며, main에 push하면 Vercel이 자동 배포합니다. 일반 작업에 브라우저 로그인은 필요하지 않습니다.
runfit-lineuppkkong/running-shoes브라우저에서 index.html을 직접 열면 정적 fallback으로 동작합니다. Vercel 서버리스 API까지 함께 확인하려면 로컬 Vercel-like 서버를 사용합니다.
node --run build
python3 -m http.server 4173
# Vercel API 포함 확인
node scripts/serve-vercel-like.mjs
data/shoes.js, data/lineup-history.js, data/price-queries.js, data/runrepeat-reviews.js/shoes/<brand-model>/ (기존 #/shoe/{id} 링크도 지원)lib/lineup-models.js는 모델 연결·이력을, lib/shoe-content.js는 목록 뱃지·상세 HTML을, lib/shoe-routes.js는 URL·구조화 메타데이터를 담당합니다.Adizero Prime X Evo는 공식 페이지에 흰 배경 측면 제품 컷이 없어, 사용자가 제공한 제품 컷을 예외로 사용하며 공식 링크는 Adidas 한국 공식몰로 연결합니다.assets/shoes-original-safe/000.*~120.*
assets/shoes/는 원본 보관용이며 scripts/create-official-image-assets.py가 현재 데이터 순서에 맞춰 배포용 경로로 원본 파일을 복사합니다.아래 Supabase 설정은 향후 도입을 위한 참고 자료이며 현재 운영에 필요하지 않습니다. 평소 배포는 운영 절차를 따릅니다.
GitHub, Vercel, Supabase의 역할은 겹치지 않게 분리합니다.
/api/bootstrap 서버리스 API, 향후 cron필요 환경변수:
SUPABASE_URL=...
SUPABASE_ANON_KEY=...
SUPABASE_TABLE_PREFIX=runfit_
# REST seed 실행 시에만 필요
SUPABASE_SERVICE_ROLE_KEY=...
배포 상태 확인:
curl https://<vercel-domain>/api/health
curl https://<vercel-domain>/api/health?strict=1
Supabase 초기화:
# Supabase SQL editor 또는 CLI에서 실행
supabase/migrations/0001_initial.sql
# 현재 정적 데이터를 seed SQL로 생성
node scripts/export-supabase-seed.mjs > supabase/seed.sql
# Supabase REST로 seed 직접 주입
SUPABASE_URL=... SUPABASE_SERVICE_ROLE_KEY=... SUPABASE_TABLE_PREFIX=runfit_ node scripts/seed-supabase-rest.mjs
Vercel 검증:
PRODUCTION_URL=https://runfit-lineup.vercel.app node scripts/verify-production.mjs
가격 스냅샷 수집은 현재 사용자 화면에서 사용하지 않습니다. 필요 시 수동 검토용으로만 실행합니다.
NAVER_CLIENT_IDNAVER_CLIENT_SECRET수동 실행:
NAVER_CLIENT_ID=... NAVER_CLIENT_SECRET=... node scripts/collect-prices.mjs --limit 3 --dry-run
NAVER_CLIENT_ID=... NAVER_CLIENT_SECRET=... node scripts/collect-prices.mjs
node --run check
node --run audit
node --run test
node scripts/verify-production.mjs
node --check app.js
node --check runtime-data.js
node --check api/bootstrap.js
node --check api/health.js
node --check lib/bootstrap-data.js
node --check data/shoes.js
node --check data/lineup-history.js
node --check data/price-queries.js
node --check data/prices/latest.js
node --check scripts/collect-prices.mjs
node --check scripts/audit-lineup-history.mjs
node --check scripts/audit-prices.mjs
node --check scripts/export-supabase-seed.mjs
node --check scripts/seed-supabase-rest.mjs
node --check scripts/serve-vercel-like.mjs
node --check scripts/verify-production.mjs
node scripts/audit-lineup-history.mjs
node scripts/audit-images.mjs
python3 scripts/audit-official-image-assets.py
node scripts/audit-prices.mjs