Commit Graph
13 Commits
Author SHA1 Message Date
adrianbonpin b14f03e2b7 fix: correct title duplication on /games and /devices pages (Task 3) 2026-05-25 19:30:19 +08:00
adrianbonpin ff360c6ab4 feat: display wattHours and tdpMax on device cards 2026-05-09 23:27:37 +08:00
adrianbonpin 02bdbe2825 feat: include wattHours, tdpMax, and batteryLife in hardware and game stats APIs 2026-05-09 22:25:34 +08:00
adrianbonpin 863358a8fd fix: resolve Next.js 16 build errors
- Extract Elysia app from route.ts into lib/api/app.ts to avoid
  Next.js 16 invalid export validation ('app' is not a valid route
  export field)
- Remove runtime='nodejs' from opengraph-image.tsx (invalid segment
  config in Next.js 16)
- Replace computed revalidate expression in sitemap.ts with literal
  (Next.js cannot statically evaluate BinaryExpression for segment
  configs)
- Update eden.ts imports to match new app.ts location
2026-05-05 00:36:17 +08:00
adrianbonpin 37e51f4d48 fix: gracefaul fallback + force-dynamic for build 2026-04-28 07:14:25 +08:00
adrianbonpin f35b6aee1e feat: transfer admin check to middleware and add vertical padding 2026-04-27 23:47:24 +08:00
adrianbonpin 647a26db94 chore: fix build errors and lint warnings from devices/admin implementation
- Fix setRole type error (cast to admin-accepted role type)
- Fix OG image edge runtime → nodejs (Drizzle needs Node.js)
- Fix eslint set-state-in-effect warnings
- Fix img → next/image in admin users client
- Remove unused eslint-disable directives
2026-04-27 22:22:52 +08:00
adrianbonpin e4e78cc578 feat: add per-device OG image generator for device detail pages
- Renders device name, type badge, and stats on branded dark background
- Uses Edge runtime for fast generation
- References OG image in device detail page metadata
2026-04-27 20:58:43 +08:00
adrianbonpin 060911e29d feat: redesign device detail page with fixes and improvements
- Fix upscalerBreakdown/fsrBreakdown property name mismatch
- Fix deviceTypeLabel map (handled → handheld)
- Fix device color to use per-device colorIndex instead of hardcoded 0
- Add image/icon hero section with device color accent
- Add error state with retry button
- Add generateStaticParams with ISR (1-hour revalidation)
- Enhanced SEO metadata with keywords, OG, Twitter cards
- Fix JSON-LD to use 'Handheld' label instead of raw enum value
2026-04-27 20:55:15 +08:00
adrianbonpin eb944c2b3c feat: redesign devices list page with filter tabs, image/icon, verified stats
- Server component fetches data and passes as props (RSC pattern)
- Add device-type filter pills (All/Handheld/Console)
- Add device image with icon fallback
- Add verified count to stats row
- Fix deviceTypeLabel to use 'handheld' key
- Cap stagger animation delay at 0.5s
- Enhanced SEO metadata with keywords and OpenGraph
2026-04-27 20:48:15 +08:00
adrianbonpin 713b309f74 feat: SEO overhaul — expanded sitemap, JSON-LD, canonical URLs, search metadata 2026-04-27 16:05:31 +08:00
adrianbonpin 0d477d8402 feat: add device detail page with charts and stats 2026-04-26 11:26:43 -05:00
adrianbonpin 6f2899b77d feat: add devices grid page with device cards 2026-04-26 11:23:24 -05:00