Fujimod
브라우저에서 카메라 펌웨어를 시험하고 Fujimod SD 부팅 파일을 만든다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Try it: https://kyoto-trip-planner.vercel.app (public, no login)
This is a prototype with sample data. Nothing here is a real listing or booking.
A chat page that answers questions about a Kyoto weekend with stay, experience and food cards.
Each tick links to a screenshot in Tested on phone and laptop where one exists. Code-level rows link to the code. "Confirmed by tester" means it was checked by hand on that device, but no screenshot was taken.
| Requirement | Phone | Laptop | Proof |
|---|---|---|---|
| Guest message stays visible throughout | ✅ | ✅ | Phone 1, 2, 3; Laptop 1, 2, 3 |
| Thinking dots show before every reply | ✅ | ✅ | Confirmed by tester on phone and laptop |
| Three cards appear (stay, Experience, food) | ✅ | ✅ | Laptop 1, 3; phone confirmed by tester (screenshots show the stay card) |
Typing best places in USA shows the broken mock | ✅ | ✅ | Phone 2; Laptop 2 |
| The error appears inside the assistant bubble with “We couldn't put your plan together just now.” and “Your request is saved, and you can try again.” | ✅ | ✅ | Phone 2; Laptop 2 |
| Exactly one “Try again” button, inside the bubble | ✅ | ✅ | Phone 2; Laptop 2 |
| No red, no error codes, no alerts, toasts, modals or separate pages | ✅ | ✅ | Phone 2; Laptop 2 |
All three broken shapes (bad type, missing data, plain string) are rejected by toResponseItems | — | — | Code check: src/lib/responseItems.ts, shapes in src/data/mockResponse.ts |
| Try again removes the failed bubble, shows the dots, then the three cards, and never picks the broken mock | ✅ | ✅ | Phone 3, Laptop 3; dots confirmed by tester |
aria-live="polite", AA contrast, icon hidden from screen readers | — | — | Code check: src/app/chat.tsx (aria-live="polite", text-gray-800 on bg-gray-50; the bubble has no icon) |
| Visible focus ring on Try again | N/A (touch, no keyboard) | ✅ | Laptop confirmed by tester; classes in src/app/chat.tsx |
| 44px tap target on Try again | ✅ | ✅ | Confirmed by tester; min-h-[44px] in src/app/chat.tsx |
| Works on phone and laptop | ✅ | ✅ | Phone 1, 2, 3; Laptop 1, 2, 3 |
| Public Vercel link opens with no login | ✅ | ✅ | Phone 2 (vercel.app in the address bar); Laptop 1 |
Each step was run on the live Vercel link. The step names match the checklist rows they prove.
| Step | Laptop | Phone |
|---|---|---|
| 1. Three cards appear (stay, Experience, food) | ||
2. Typing best places in USA shows the broken mock | ||
| 3. Try again removes the failed bubble, then the three cards |
To fire the forced failure, type best places in USA as the whole message (any case); src/app/chat.tsx then sends the broken mock from src/data/mockResponse.ts.
Every text field (name, neighbourhood, dates, price, highlight) comes from a real row in Kyoto_weekend_workbook.xlsx. The one filler field is:
StayCard, ExperienceCard, FoodCard): a placeholder image icon labelled "Photo of … coming soon". The workbook has no photo column yet.Run it locally with npm install && npm run dev, then open http://localhost:3000.
Checked against the draft UX Research requirements note.
Hi team and leaders, the Kyoto Trip Planner prototype is ready for Thursday's session. The researcher shares this link with 8 test guests; product team and leadership, try it before and after: https://kyoto-trip-planner.vercel.app (public, no login, phone or laptop).
All sample data: nothing is a real listing or can be booked.