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
bce1e812b5
chore: bump version to 2026.0.9
2026-04-29 13:02:26 +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
6415200f34
feat: add steam game search
2026-04-25 21:37:34 +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
adrianbonpin
a7cafe7ae5
fix: resolve all build errors and ensure clean build
2026-04-25 14:51:06 +08:00
adrianbonpin
d6dc701e3f
feat(api): add user profile routes (public profile, me, sessions)
2026-04-25 14:43:32 +08:00
adrianbonpin
3ef9649322
feat(api): add application-level rate limiting middleware with IP-based tracking
2026-04-25 14:34:24 +08:00
adrianbonpin
f8aa64bd32
feat(auth): mount Better-Auth on Elysia server with session macro and role guards
2026-04-25 13:42:07 +08:00
adrianbonpin
52ab8484cf
fix(api): add global error handler and export app type
...
- Add .onError hook for centralized error handling and consistent JSON formatting
- Export app instance and App type for Eden Treaty client integration
Reference: Task 2, Issues 1 and 2
2026-04-25 13:11:45 +08:00
adrianbonpin
a3cba6950e
feat(api): set up Elysia server with health check on Next.js catch-all route
2026-04-25 13:04:41 +08:00