Commit Graph

7 Commits

Author SHA1 Message Date
kang
c14d17f81f feat: full diagnostic dashboard — Easy / Pro view toggle, all CHARM fields
Replace the previous one-screen SampleReport with a real two-mode dashboard
wired to every field the backend (backend/src/dtc_data.py + ai_diagnose.py
prompt) actually produces.

Easy view (owner-facing):
  • Overall health ring (78/100 B+ Good)
  • AI summary (plain English)
  • 3 issue cards: code + title + simple_explanation + urgency + cost

Pro view (mechanic-facing):
  • 5-subsystem health scores (Powertrain/Emission/Fuel/Electrical/Chassis)
    with per-subsystem colored bars
  • Per-fault detailed card:
      – category pill, labor_hours, CHARM ✓ badge
      – technical_explanation
      – causes with animated probability bars (e.g. Aged cat 40%)
      – numbered diagnostic_steps
      – whenMonitored + setCondition
      – cost range + urgency pill
  • Freeze Frame Data grid (12 OBD params, out-of-range highlighted amber)
  • I/M Readiness Monitors (8 monitors with Ready / Pending / Not Ready dots)
  • Multi-code correlation note (blue gradient card — P0171 ↔ P0420 linkage)
  • Meta footer: 706 GB CHARM + DeepSeek-R1 + timing + raw-JSON hint

Vehicle bar shows VIN and AI model only in Pro. CTAs + total cost strip
unchanged but gain a pro-mode "priority-ordered fix plan" hint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 21:30:28 +08:00
kang
accb67e8ff feat: DTC carousel — 5 real codes with AI diagnosis, auto/manual scroll
New DTCCarousel section (#cases) sits between Hero and Showcase, showing
five common OBD-II codes with their OBDX output:

  P0420 · Catalytic Converter (Civic) — Plan within 2 weeks · $400–650
  P0301 · Cyl 1 Misfire (Camry)       — Easy fix · $80–200
  P0171 · Lean Fuel (F-150)           — Easy fix · $80–220
  P0442 · EVAP Small Leak (Equinox)   — Easy fix · $5–120
  P0700 · Trans Fault (Grand Cherokee)— Urgent · $100 diag–$3,500 rebuild

Each slide has an INPUT card (DTC + vehicle + mileage, big monospaced code
colored by severity) and an OUTPUT card (plain-English diagnosis + severity
pill + cost / drivability / first-move triplet).

UX: 6s auto-advance with linear progress bar, pause on hover & touch, prev
/next arrows, 5 jump-to dots, reduced-motion aware, aria-current on dots.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 21:14:48 +08:00
kang
b51e07c843 fix(qa): mascot 5.4MB → 127KB (sips JPEG q88), wire up #features anchor
- public/brand/ip/wrench-uncle/default.jpg: 900px wide JPEG q88 (130 KB),
  -97.7% vs the 5.65 MB PNG it replaces in Hero. Original PNG kept on disk
  in case higher-res variants are needed later.
- ASSETS.wrenchUncle now points to the JPEG.
- Hero features bento gets id="features" + scroll-mt-6 so the navbar's
  Features link (and the footer Product/Features) actually scrolls
  somewhere instead of dead-anchoring.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 18:39:56 +08:00
kang
fe213da700 feat: add SampleReport.tsx (was missed in previous commit, untracked) 2026-04-23 16:53:02 +08:00
kang
6606bbdf81 feat: SampleReport section — full mock AI report (Honda Civic, 3 DTCs, $520-850)
The "Run a demo report" CTA in Showcase now scrolls to a complete sample —
vehicle bar, health score 78/100 (B+), AI summary, 3 prioritized issues
(P0420 / P0171 / P0496), total cost, and "Try with your car" / "Send to
mechanic" CTAs. Hardcoded data — no backend AI Key needed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 16:51:50 +08:00
kang
a3381cbfd8 nginx: reverse-proxy legacy /scan.html /demo.html /report/* alongside /api/*
These paths are still served by the old FastAPI container (now obdx-api),
so the new landing nginx must forward them upstream instead of letting the
SPA fallback swallow them.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 16:35:50 +08:00
kang
7193eacfa5 init: OBDX web landing (Bento Garage design)
- Vite + React + TS + Tailwind v4 + framer-motion + lucide
- 5 sections: Hero, Showcase (steps + 3 cases), Pricing, Comparison, Footer
- Brand assets local (logo v2 SVG, 3 mascots, 6 scenes) under public/brand/
- Dockerfile multi-stage (node 20 build → nginx 1.27 alpine)
- nginx /api/* reverse-proxy to obdx-api:8080, SPA fallback
- /healthz endpoint for Coolify

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 16:19:47 +08:00