a18d0efc6d9d5185761b9b092be257a8a435df3c
- Backend: add GET /api/products/search (full-text) and GET /api/products/featured endpoints; update GET /:id to include related_products (same category, limit 4) - Products.tsx: full rewrite with sidebar filters (METI toggle prominent first, category buttons, price bands), sort dropdown, 12-per-page pagination, search bar calling /search endpoint, empty state, responsive 1/2/3 col grid - ProductDetail.tsx: new page with image, name/name_ja, price, METI badge, craftsman link, description, AR button (amber, only when ar_model_url + ar_eligible=true), ar_ineligible_reason badge, add-to-cart (login-gated), related products grid (max 4), reviews section (max 5, star rating) - App.tsx: add /products/:id route for ProductDetail - Home.tsx: category tiles already link to /products?category=<key>; add New Arrivals section fetching /api/products/featured showing 4-col product card grid Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
shokuninmarche
職人マルシェ - Japanese Craft Marketplace
Description
Languages
TypeScript
53.3%
JavaScript
34%
PLpgSQL
11.1%
CSS
0.9%
Dockerfile
0.5%
Other
0.2%