V.4.4.0: UI improvement and mood enhance#9
Conversation
hoainho
commented
Jun 21, 2026
- Đại tu giao diện: hệ màu hài hòa, lớp nền mờ rõ chữ, chuyển động tinh tế và đồng nhất hơn
- Nhập cảm xúc tự do — chạm vài gợi ý là Mơ hiểu, không cần gõ nhiều
- Bộ cảm xúc mở rộng cả chiều tiêu cực (buồn, chán, bực bội, căng thẳng, cô đơn) — Mơ phản hồi đồng cảm
- Gợi ý theo mùa tự xoay theo quý (Xuân / Hè / Thu / Đông)
- Trang chủ "sống": màu giao diện đổi theo cảm xúc + nền aurora và đom đóm chuyển động
- Bản đồ hành trình vẽ lại từ đầu: đúng vùng, đúng thứ tự, đường nối rõ ràng
…or accurate venue geocoding & OSRM car routes Bias each venue to its own day's locality (not one trip centre); reject cross-country mis-geocodes; draw OSRM driving routes through precise stops.
…_EDGE_PROXY_URL and clear backend-not-configured guard
…roxy.hoainho.info) Worker forwards /v1/generate to the proxy via a Gemini⇄OpenAI adapter (LLM_PROVIDER switch, key server-side) to bypass Gemini's Vietnam geo-block. Frontend unchanged. +10 adapter tests.
…layout) + parked device-local-persistence AC + E2E mapping + harness contract; normalized via deep-design (map-in-App, frameloop-vs-motion, card-pull-is-DOM, swiftshader baselines).
… freezeScene + CI e2e gate Story G001. Per-project grep keeps existing 21 specs desktop-only; chromium-visual uses swiftshader; build now needs test-worker. Test-infra only.
…idden, leak-free WebGL guard) Ultragoal Story G002. @react-three/postprocessing Bloom + tone mapping + ColorManagement on both Canvases; warm/indigo lights; fog near=12; visible journey arcs; sceneHelpers (PauseOnHidden, RenderCountProbe, cached leak-free isWebGLAvailable, SceneErrorBoundary); manualChunks; flatShading hierarchy; amber palette. +e2e three-d & visual-3d specs. Aesthetic user-approved.
…crims, gradient discipline, a11y Ultragoal Story G003. Lift TripMap into the result's shared scroll container (2-col + sticky @>=1024px, map.resize on breakpoint; single-col mobile); scrim behind hero/card-pull/form text over the 3D; card-pull panels/labels/jitter; gradient discipline; result IA + zero-state; hero value-chips strip. A11y: aria-label on activity edit button + slate-500/600→slate-400 contrast. +@axe-core/playwright, e2e/a11y.spec & e2e/layout.spec. e2e 29/29.
…egion-anchored trip map Single-column result + 3 view modes, seasonal/negative emotions, changelog, mobile & overflow fixes
There was a problem hiding this comment.
Code Review
This pull request implements a comprehensive overhaul of the MoodTrip application, introducing a flexible, emotion-driven hybrid mood input, a unified design system with improved readability over 3D backdrops, and polished 3D scenes featuring post-processing bloom and performance optimizations. Additionally, the trip map has been upgraded to display a continuous, road-snapped route with global sequential numbering, and the Cloudflare Worker now supports forwarding requests to an OpenAI-compatible LLM proxy. Feedback on the changes suggests replacing a hardcoded personal Worker URL in .env.example with a placeholder to prevent accidental requests to the personal deployment environment.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| # Set this in your host (e.g. Vercel) build env. In local dev it can stay empty — the Vite | ||
| # devEdgeProxy middleware serves /v1/* on the same origin. Example after `wrangler deploy`: | ||
| # VITE_EDGE_PROXY_URL=https://moodtrip-edge-proxy.<account>.workers.dev | ||
| VITE_EDGE_PROXY_URL=https://moodtrip-edge-proxy.remalw2019.workers.dev |
There was a problem hiding this comment.
Trong file .env.example, chúng ta nên sử dụng placeholder (ví dụ: <account>) thay vì hardcode URL Worker cá nhân (remalw2019). Điều này giúp tránh việc người dùng vô tình gửi request đến môi trường deploy cá nhân của bạn trong quá trình phát triển cục bộ hoặc khi họ sao chép file cấu hình này.
VITE_EDGE_PROXY_URL=https://moodtrip-edge-proxy.<account>.workers.dev