Commit Graph
63 Commits
Author SHA1 Message Date
adrianbonpin 5d388f6f49 feat: add sync API endpoints (single + bulk) 2026-04-29 10:58:21 +08:00
adrianbonpin 133a4a9cc2 fix: resolve lint warnings - remove unused imports and fix type annotations 2026-04-29 01:47:11 +08:00
adrianbonpin 7903c9fbbd Tasks 12-13: Fix release date input to type=date, add sort direction toggle to games page 2026-04-29 01:45:04 +08:00
adrianbonpin 8a063bfb6c fix: include benchmark games in device filter and exclude soft-deleted entries from search
Task 10: Device filter now combines games with platform support entries
AND games with performance entries for the selected hardware, instead of
only checking gamePlatformSupport. This ensures games that have benchmarks
but no explicit platform support entry still appear in filtered results.

Task 11: The benchmark count query (bCounts) in unified search now filters
out soft-deleted performance entries using isRemoved = false. The pCounts
and perfStats queries already had this filter; only bCounts was missing it.
2026-04-29 01:43:37 +08:00
adrianbonpin b64e55157e fix: add horizontal scroll to benchmarks table, add hard delete functionality
- Wrap table in overflow-x-auto container with min-w-[800px] to prevent overflow on smaller screens
- Add hard delete (purge) button to actions column for each benchmark entry
- Add confirmation dialog for permanent deletion with warning
- Add handleHardDelete handler that calls DELETE /api/admin/performance/:id/hard-delete
- Add DELETE endpoint for hard-deleting performance entries from the database
- Expand confirmAction state type to include 'hardDelete'
2026-04-29 01:38:29 +08:00
adrianbonpin 0f0176ae39 feat: add compare API endpoints for games and presets 2026-04-29 00:36:21 +08:00
adrianbonpin b8173bd8f8 feat: non-Steam game editing API, createdBy tracking, and source badges in search 2026-04-29 00:16:43 +08:00
adrianbonpin c6d4e7b3d1 feat: non-Steam game submission wizard with SteamGridDB integration 2026-04-29 00:00:10 +08:00
adrianbonpin 74fe0447ee feat: add SteamGridDB proxy API for non-Steam game images 2026-04-28 23:36:00 +08:00
adrianbonpin cc34fd17ef feat: add pinned presets with admin pin/unpin and dedicated section 2026-04-28 23:32:32 +08:00
adrianbonpin 799bfbbf31 feat: add system requirements, store stats, and pricing to game schema and steam sync 2026-04-28 23:13:08 +08:00
adrianbonpin 7e2ab978e1 feat: add performance tier and stability scatter charts 2026-04-28 23:08:01 +08:00
adrianbonpin 741c19e840 feat: display 1% low FPS in presets, stats API, and game details 2026-04-28 22:56:43 +08:00
adrianbonpin 4d759160db feat: add 1% low FPS field to benchmark submission wizard 2026-04-28 22:43:46 +08:00
adrianbonpin ab27ba948f fix: add image fallback chain for missing game covers in search 2026-04-28 22:30:19 +08:00
adrianbonpin d6a9601591 fix: refactor wizard edit mode to use lazy state init instead of effect setState 2026-04-28 09:51:26 +08:00
adrianbonpin 37c5d87baa Add admin benchmarks page with search, filter tabs, pagination, verify/remove/restore actions 2026-04-28 08:31:36 +08:00
adrianbonpin 2ab4ac5ebc feat: add admin comments API route
- GET /admin/comments: list all comments with pagination, removed filter, and author search
- PATCH /admin/comments/:id/remove: admin-only soft delete
- PATCH /admin/comments/:id/restore: admin-only restore
2026-04-28 07:55:57 +08:00
adrianbonpin 6d27ec03ab Task 2: Admin Performance Entries API Route
- GET /admin/performance — paginated listing with removed/verified/search filters,
  joining games, gameVersions, hardware, and user tables
- PATCH /admin/performance/:id/verify — verify entry (contributor or admin)
- PATCH /admin/performance/:id/remove — soft-delete entry (admin only)
- PATCH /admin/performance/:id/restore — restore entry (admin only)
- Registered route in app/api/[[...slugs]]/route.ts and lib/api/index.ts
2026-04-28 07:52:49 +08:00
adrianbonpin 1108264e4c feat: add admin reports API route
- GET /admin/reports with pagination, status filtering, joins, and batch author name lookup
- PATCH /admin/reports/:id/status to review (soft-delete entry) or dismiss
- Register route in lib/api/index.ts and app/api/[[...slugs]]/route.ts
2026-04-28 07:44:39 +08:00
adrianbonpin d375112c8e fix: resolve SQL ambiguity in subquery, remove unused imports, fix lint errors 2026-04-28 02:14:13 +08:00
adrianbonpin b1cdfae6b7 feat: add contact form API with Discord webhook, rate limiting, and anti-bot checks 2026-04-28 02:04:25 +08:00
adrianbonpin 3aa8ecd94f fix: resolve benchmark sort alias mismatch and prioritize Steam Deck in deckStatus 2026-04-28 01:55:21 +08:00
adrianbonpin 4f1f654024 feat: add games listing API endpoint with search, genre/device filter, and sort 2026-04-28 01:45:13 +08:00
adrianbonpin ab076a92c8 refactor: remove broken Community Trust chart (TrustBar)
- Remove TrustBar component and chart
- Remove trust data from game-stats API response
- Remove trust section from game detail page
- DB columns and vote endpoints preserved for future voting system
2026-04-27 20:41:28 +08:00
adrianbonpin 599cb024c9 fix: exclude null FPS entries from avgFps calculation in device stats API 2026-04-27 20:36:29 +08:00
adrianbonpin f228800593 feat: change user-delete to soft delete for performance entries 2026-04-27 15:36:12 +08:00
adrianbonpin 27cd5e3321 feat: add POST /api/performance/:id/report endpoint 2026-04-27 15:34:17 +08:00
adrianbonpin 07467a4812 refactor: remove communityPresets schema, API, and routes 2026-04-27 14:29:30 +08:00
adrianbonpin 2ff54e58b3 refactor: replace communityPresets count with performanceEntries preset count 2026-04-27 14:11:27 +08:00
adrianbonpin aa098ebaf8 feat: add owner-scoped hard delete for performance entries 2026-04-27 14:10:01 +08:00
adrianbonpin 457d6f5f39 fix: resolve 3 lint issues
- login-form.tsx: suppress unused-vars warning for emailChecked state
- bookmark-button.tsx: use function initializer for isLoading to avoid sync setState in effect
- saved-games.ts: remove unused 'set' parameter from check endpoint
2026-04-27 13:15:16 +08:00
adrianbonpin 10fdbe9cee chore: build cleanup, fix lint errors in our changes, fix login Suspense boundary 2026-04-27 07:31:19 +08:00
adrianbonpin 91de833417 feat: replace fsrVersion with upscalerType/upscalerVersion, add battery & custom system columns 2026-04-27 07:18:43 +08:00
adrianbonpin beed7f02a8 refactor: remove custom passkey routes in favor of better-auth SDK endpoints 2026-04-26 12:15:26 -05:00
adrianbonpin 12bebf5389 fix: unify password minimum length to 10 characters across all flows 2026-04-26 12:13:08 -05:00
adrianbonpin b0688f8f2a Refactor: Remove server state files and update server log handling
- Deleted server-stopped, server.log, and server.pid files to clean up unused state.
- Updated game-page-client.tsx to enhance button accessibility with cursor-pointer class.
- Modified not-found.tsx, page.tsx, and profile/page.tsx for consistent cursor-pointer usage on links.
- Adjusted search/page.tsx and components/auth/*.tsx for improved button interactions with cursor-pointer.
- Refined navbar.tsx for better user experience with cursor-pointer on navigation links.
- Updated settings-security-tab.tsx for passkey management API endpoints and improved error handling.
- Enhanced saved-games components for better user interaction with cursor-pointer on buttons.
- General code cleanup and consistency improvements across various components.
2026-04-26 12:09:37 -05:00
adrianbonpin 93a474ef45 feat: add hardware stats API endpoints (list + detail) 2026-04-26 11:21:41 -05:00
adrianbonpin bea155005f feat: add security settings tab with password and passkey management 2026-04-26 11:11:48 -05:00
adrianbonpin 13ef29c6c0 feat: add performance entry submit and autocomplete API 2026-04-26 10:11:38 -05:00
adrianbonpin dd123d4afd feat: add saved games API endpoints 2026-04-26 10:01:51 -05:00
adrianbonpin 544cdb29cd fix: address code quality issues in user API 2026-04-26 09:51:31 -05:00
adrianbonpin 8301562613 feat: extend user API with contribution history and verified count 2026-04-26 09:47:38 -05:00
adrianbonpin b2ce6f966b fix: resolve build and lint issues for game page display 2026-04-26 15:59:31 +08:00
adrianbonpin e7e16d4772 feat: add Raw Performer badge and real data to search results 2026-04-26 15:55:05 +08:00
adrianbonpin 629d8acfc5 feat: add game stats aggregation API endpoint 2026-04-26 15:42:26 +08:00
adrianbonpin 668610e8fa chore: auth flow cleanup and verification 2026-04-26 01:45:34 +08:00
adrianbonpin 4fc4b070dc feat: update search page and improve details 2026-04-26 01:08:10 +08:00
adrianbonpin 6415200f34 feat: add steam game search 2026-04-25 21:37:34 +08:00
adrianbonpin 5dd30665f7 feat(api): add upvote/downvote and best-entry endpoints to performance entries 2026-04-25 18:55:48 +08:00