Commit Graph

  • 18299fbb8d refactor(manage): use shared ConfirmDialog in comments page adrianbonpin 2026-05-10 01:53:13 +08:00
  • 6b6429a9e5 refactor(manage): use shared ConfirmDialog in reports page adrianbonpin 2026-05-10 01:51:44 +08:00
  • f54580394d chore(verify): storage page renders correctly in production build adrianbonpin 2026-05-10 01:48:23 +08:00
  • 0d1560ecc7 feat(manage): add R2 storage management page with stats, browser, cleanup adrianbonpin 2026-05-10 01:46:14 +08:00
  • 814a5c3d7c feat(api): register admin storage routes and export from index adrianbonpin 2026-05-10 01:22:33 +08:00
  • 0772b61de8 feat(api): add admin storage management endpoints (stats, list, delete, cleanup) adrianbonpin 2026-05-10 01:20:12 +08:00
  • d01e8c5ea5 feat(manage): add Suggestions and Storage nav items, reorganize sidebar sections adrianbonpin 2026-05-10 01:15:36 +08:00
  • 49cbd7a292 feat(manage): update SuggestionsClient to use admin paginated endpoint adrianbonpin 2026-05-10 01:13:13 +08:00
  • 55e5028b09 feat(api): add admin paginated suggestions endpoint adrianbonpin 2026-05-10 01:07:24 +08:00
  • 755d3c0f6c feat(manage): add community suggestions moderation page adrianbonpin 2026-05-10 01:03:55 +08:00
  • aedd84626d chore(verify): hardware API already supports wattHours and tdpMax adrianbonpin 2026-05-10 00:53:44 +08:00
  • eb22efc23f feat(manage): display wattHours and tdpMax on device cards adrianbonpin 2026-05-10 00:51:14 +08:00
  • 13bb95b6bd feat(manage): include wattHours and tdpMax in hardware submit body adrianbonpin 2026-05-10 00:49:26 +08:00
  • e35fbf8e71 feat(manage): add wattHours and tdpMax inputs to hardware form adrianbonpin 2026-05-10 00:46:49 +08:00
  • fd9d75c85f feat(manage): add wattHours and tdpMax to DeviceFormData and DeviceItem interfaces adrianbonpin 2026-05-10 00:44:49 +08:00
  • f1eec58093 chore(verify): validate shared Modal and ConfirmDialog components build and resolve correctly adrianbonpin 2026-05-10 00:42:38 +08:00
  • 137fba683b feat(ui): add shared ConfirmDialog component adrianbonpin 2026-05-10 00:39:53 +08:00
  • fe593fc76f feat(ui): add modal barrel export adrianbonpin 2026-05-10 00:34:53 +08:00
  • c040f36fe0 feat(ui): add shared Modal component with portal, overlay, escape handler adrianbonpin 2026-05-10 00:32:46 +08:00
  • 6718f1b033 fix: updates page sorting — correct version typo 971→97.1 and add semver tiebreaker adrianbonpin 2026-05-09 23:47:50 +08:00
  • 5ed60ef3cc chore: fix lint/type issues from seven-feature integration adrianbonpin 2026-05-09 23:35:21 +08:00
  • 085ebb54d4 feat: optional screenshot upload step after benchmark submission adrianbonpin 2026-05-09 23:30:17 +08:00
  • ff360c6ab4 feat: display wattHours and tdpMax on device cards adrianbonpin 2026-05-09 23:27:37 +08:00
  • bb45599fe9 feat: add TDP and YouTube video inputs to benchmark submission wizard adrianbonpin 2026-05-09 23:25:30 +08:00
  • b5d9f0e19b feat: power quick-look bar, YouTube indicator, battery chart, screenshot gallery on game details adrianbonpin 2026-05-09 23:20:34 +08:00
  • 4998337913 feat: BatteryLifeChart component for power usage visualization adrianbonpin 2026-05-09 23:04:20 +08:00
  • f03411a8be feat: mobile hero background with gradient overlay on game details page adrianbonpin 2026-05-09 23:01:26 +08:00
  • fbc041d62d feat: filter drawer overlay on mobile for games list adrianbonpin 2026-05-09 22:47:33 +08:00
  • 3cbb3538da feat: add screenshot upload/list/delete API routes adrianbonpin 2026-05-09 22:40:05 +08:00
  • b7c74fcaf5 feat: add sharp dependency and screenshot processing pipeline adrianbonpin 2026-05-09 22:36:05 +08:00
  • 027d3ac8fc feat: auto-pin entries with ≥10 votes and ≥80% approval adrianbonpin 2026-05-09 22:32:19 +08:00
  • 8ea160bd05 feat: accept tdpWatts and youtubeVideoId in performance submit/edit APIs adrianbonpin 2026-05-09 22:29:34 +08:00
  • 02bdbe2825 feat: include wattHours, tdpMax, and batteryLife in hardware and game stats APIs adrianbonpin 2026-05-09 22:25:34 +08:00
  • 666219614b chore: generate migration 0023 for screenshots, power, youtube schema adrianbonpin 2026-05-09 22:20:41 +08:00
  • 8904a7b611 feat: add entryScreenshots table, wattHours/tdpMax on hardware, tdpWatts/youtubeVideoId on performanceEntries adrianbonpin 2026-05-09 22:12:08 +08:00
  • c20ef2a5f4 chore: version bump to 2026.0.99, changelog, and news post adrianbonpin 2026-05-09 22:09:23 +08:00
  • 32386ce170 fix: resolve all ESLint errors and warnings adrianbonpin 2026-05-09 16:38:29 +08:00
  • 321c923464 feat: switch sitemap from static file to dynamic DB-driven generation adrianbonpin 2026-05-09 15:31:05 +08:00
  • 4bca9c97c9 fix: prevent localhost from being used as sitemap base URL adrianbonpin 2026-05-09 15:12:55 +08:00
  • f808b8325a feat: wire photo upload/delete changes upward for instant page-wide refresh adrianbonpin 2026-05-09 14:00:13 +08:00
  • 11d944bef2 fix: profile photo upload field name mismatch ('file'→'photo'), sitemap auto-run only on CLI adrianbonpin 2026-05-09 13:55:22 +08:00
  • 7094e05227 feat: v2026.0.98 changelog, version bump, regenerated sitemap adrianbonpin 2026-05-09 13:33:47 +08:00
  • 03428bdd0b feat: add admin sitemap regeneration endpoint and cron task adrianbonpin 2026-05-09 13:30:38 +08:00
  • c6a9b448d3 feat: add advanced filters and saved filter presets to search page adrianbonpin 2026-05-09 13:27:59 +08:00
  • 1e59224622 feat: restructure game details layout, expand sys reqs by default, optimize for mobile and controller adrianbonpin 2026-05-09 13:19:44 +08:00
  • 2bc6953339 feat: add public dashboard page with trending, best new releases, and most tested charts adrianbonpin 2026-05-09 13:11:27 +08:00
  • 2f4f0250df feat: add public dashboard API routes for trending, best new, most tested, most reported adrianbonpin 2026-05-09 13:07:52 +08:00
  • 5bc85aa850 feat: add static sitemap generation script, replace dynamic sitemap with static files adrianbonpin 2026-05-09 13:04:33 +08:00
  • d4a12fe19d feat: add profile photo upload UI component and integrate into settings adrianbonpin 2026-05-09 12:58:11 +08:00
  • 20f1d33751 feat: add profile photo upload/delete API routes with R2 storage adrianbonpin 2026-05-09 12:54:12 +08:00
  • 6009366fb4 feat: add modular daily cron system with storage cleanup and orphan detection adrianbonpin 2026-05-09 12:50:16 +08:00
  • 393bc9a9c6 feat: add R2 storage client module with upload, delete, list, metadata adrianbonpin 2026-05-09 12:46:47 +08:00
  • f59ef61634 feat: add storage_objects schema for R2 tracking adrianbonpin 2026-05-09 12:44:49 +08:00
  • bb459b3146 fix: resolve submit crash (.data.id undefined) & add missing update posts adrianbonpin 2026-05-09 00:56:01 +08:00
  • dcf6066b2b feat: sitemap remediation, PWA activation, search refinements, Steam Deck UX adrianbonpin 2026-05-05 16:20:28 +08:00
  • 9be64359be fix: remove Updates from navigation routes adrianbonpin 2026-05-05 02:12:16 +08:00
  • 52fd3b5ba4 refactor: createGameStub now uses ensureSteamGame pipeline adrianbonpin 2026-05-05 02:10:33 +08:00
  • b627a15a21 refactor: game-stub route now uses ensureSteamGame pipeline adrianbonpin 2026-05-05 02:05:36 +08:00
  • 47ac4c218b test: add unit tests for ensureSteamGame stub-then-sync adrianbonpin 2026-05-05 02:01:41 +08:00
  • 50353952db feat: add ensureSteamGame — unified stub-then-sync entry point adrianbonpin 2026-05-05 01:29:01 +08:00
  • cfd18064bd docs: add tactical implementation plan for sync unification & nav cleanup adrianbonpin 2026-05-05 01:16:02 +08:00
  • 765adfa1d5 docs: architectural spec for sync unification, nav cleanup, and PWA adrianbonpin 2026-05-05 01:10:27 +08:00
  • 863358a8fd fix: resolve Next.js 16 build errors adrianbonpin 2026-05-05 00:36:17 +08:00
  • f0db19b243 fix: sitemaps pt.2 adrianbonpin 2026-05-04 21:41:25 +08:00
  • 633117f452 chore: final verification fixes for sitemap reliability adrianbonpin 2026-05-04 13:16:47 +08:00
  • 9d3690ce50 feat: add on-demand sitemap revalidation webhook adrianbonpin 2026-05-04 13:12:37 +08:00
  • 0a138c3099 fix: remove non-standard host directive from robots.txt adrianbonpin 2026-05-04 13:11:27 +08:00
  • 16e5cf586d feat: rewrite sitemap with ISR caching, validation, and filtered allowlist adrianbonpin 2026-05-04 13:10:56 +08:00
  • 26e0b510da feat: add sitemap dynamic entries fetcher with LIMIT, validation, and error recovery adrianbonpin 2026-05-04 13:09:02 +08:00
  • 4fbaea9d9d feat: add static sitemap entry allowlist (no auth pages) adrianbonpin 2026-05-04 13:05:28 +08:00
  • e0df92e05e feat: add sitemap image URL validation gate adrianbonpin 2026-05-04 13:04:00 +08:00
  • ca08024cb5 feat: updates page and lint fixes adrianbonpin 2026-05-01 10:15:13 +08:00
  • 7bcd580397 fix: replace prose plugin with custom CSS for markdown styling adrianbonpin 2026-05-01 09:49:26 +08:00
  • 7749162414 fix: switch markdown pipeline to remark-rehype for proper HTML rendering adrianbonpin 2026-05-01 09:44:47 +08:00
  • 1abb254fef chore: add changelog entry for updates page (v2026.0.96) adrianbonpin 2026-05-01 09:38:21 +08:00
  • fbc0085e9e feat: add typography plugin and prose styles for update viewer adrianbonpin 2026-05-01 09:37:43 +08:00
  • 695c3fbedf feat: add updates route and sitemap entry adrianbonpin 2026-05-01 09:36:44 +08:00
  • 42cf4652dd feat: add update viewer page with static generation adrianbonpin 2026-05-01 09:36:03 +08:00
  • db36ef01e1 feat: add updates list page adrianbonpin 2026-05-01 09:35:26 +08:00
  • c204c30eb9 feat: add UpdateViewer component with chapter nav and progress bar adrianbonpin 2026-05-01 09:34:45 +08:00
  • cd98d6637f feat: add ChapterNav component with mobile support adrianbonpin 2026-05-01 09:34:04 +08:00
  • f8ba2d0370 feat: add ReadingProgressBar component adrianbonpin 2026-05-01 09:33:12 +08:00
  • 7e06dec5c0 feat: add UpdateCard component for updates list adrianbonpin 2026-05-01 09:32:39 +08:00
  • edbd352b34 content: add first update post from changelog v2026.0.95 adrianbonpin 2026-05-01 09:31:57 +08:00
  • 19c2515437 feat: add content loading utilities for updates adrianbonpin 2026-05-01 09:31:04 +08:00
  • 04da5d6210 chore: add markdown parsing dependencies for updates page adrianbonpin 2026-05-01 09:29:25 +08:00
  • 824fbbd13f feat: rearrange game benchmark wizard and improve overall adrianbonpin 2026-05-01 01:18:13 +08:00
  • 293aadbff0 fix: sequential sync with 1.5s delay to avoid Steam rate limiting adrianbonpin 2026-04-30 23:13:28 +08:00
  • 583486de1a feat: streaming progress for bulk sync - real-time updates adrianbonpin 2026-04-30 23:09:35 +08:00
  • e38a2fabe7 fix: better error handling for bulk sync, fix NaN% progress display adrianbonpin 2026-04-30 23:04:51 +08:00
  • 5f037481ec perf: parallel bulk sync with 5 concurrent requests, remove 100-game limit adrianbonpin 2026-04-30 22:59:28 +08:00
  • 0461beca4e feat: review score prominent display, improved sync logic, changelog update adrianbonpin 2026-04-30 22:24:40 +08:00
  • ea01438935 Fix Steam sync logic: extract retry helper, add 429/rate-limit handling, game type validation, set syncStatus on errors adrianbonpin 2026-04-30 22:23:04 +08:00
  • 730793d6b6 feat: add star icon and styled steam review score to game cards adrianbonpin 2026-04-30 22:15:09 +08:00
  • 99766d3b4b feat: add Steam review score badge to game details hero section adrianbonpin 2026-04-30 22:11:13 +08:00
  • 9df2677fd5 docs: update changelog with steam reviews fix adrianbonpin 2026-04-30 22:06:01 +08:00
  • 2620023a96 fix: steam reviews pagination - fetch more and slice instead of broken cursor adrianbonpin 2026-04-30 22:05:42 +08:00
  • d2e40a2696 fix: add missing preset fields to serialization adrianbonpin 2026-04-30 21:59:00 +08:00
  • 976b918397 fix: suggest edit only for non-Steam games, improve preset modal, improve steam reviews error handling, update changelog adrianbonpin 2026-04-30 21:55:38 +08:00
  • 2286f0793c fix: anti-cheat is game-level, not per-device adrianbonpin 2026-04-30 21:40:25 +08:00