Commit Graph
21 Commits
Author SHA1 Message Date
adrianbonpin e7cc4d6a2e feat: add Saved Filters CRUD API
- Create lib/api/saved-filters.ts with GET, POST, PATCH, DELETE endpoints
- All endpoints require authentication via requireAuth guard
- Users can only access their own saved filters
- Register savedFilterRoutes in lib/api/index.ts
2026-04-30 19:42:55 +08:00
adrianbonpin 09fde413b9 feat: add community suggestions API with CRUD, moderation, and Discord webhook notifications
- POST /api/community-suggestions - submit suggestion (auth required)
- GET /api/community-suggestions/game/:gameId - list suggestions for a game
- GET /api/community-suggestions/pending - moderation view (contributor/admin)
- PATCH /api/community-suggestions/:suggestionId/review - approve/reject
- Discord webhook notification on new suggestions
- Route registered in API index and app router
2026-04-30 19:38:44 +08:00
adrianbonpin f9617bf586 feat: add Steam Reviews display API with caching
- Create lib/api/steam-reviews.ts with in-memory cache (1hr TTL)
- Proxy endpoint for fetching Steam reviews by game ID
- Supports offset/limit/language query params
- Registers route in API index and app router
2026-04-30 19:32:35 +08:00
adrianbonpin 051c5c22df feat: add playability calculation API
- Auto-calculate playability from benchmark data (FPS, anti-cheat, upscaler dependency)
- Manual override by admins/contributors
- Clear override to revert to auto-calculated
- Three endpoints: /calculate/:gameId, /override/:gameId, /clear-override/:gameId
- Calculation logic: great (≥55 FPS, no upscaler), playable (≥30 FPS), needs_tweaks (≥20 FPS), unplayable (<20 FPS or anti-cheat unsupported)
2026-04-30 19:22:27 +08:00
adrianbonpin 5d388f6f49 feat: add sync API endpoints (single + bulk) 2026-04-29 10:58:21 +08:00
adrianbonpin 0f0176ae39 feat: add compare API endpoints for games and presets 2026-04-29 00:36:21 +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 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 b1cdfae6b7 feat: add contact form API with Discord webhook, rate limiting, and anti-bot checks 2026-04-28 02:04:25 +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 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 93a474ef45 feat: add hardware stats API endpoints (list + detail) 2026-04-26 11:21:41 -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 629d8acfc5 feat: add game stats aggregation API endpoint 2026-04-26 15:42:26 +08:00
adrianbonpin c3a85d1336 refactor: remove structured settings tables, use freeform JSON for presets and entries 2026-04-25 18:51:10 +08:00
adrianbonpin b6eb005c73 feat(api): wire all CRUD routes into Elysia server 2026-04-25 18:31:26 +08:00