๐ฎ GG Requestz
July 29, 2026 ยท View on GitHub
๐ฎ GG Requestz
A modern game discovery and request management platform with IGDB integration, ROMM library support, and powerful search capabilities.
โจ Features
- ๐ Advanced Search - Search 200,000+ games with filters and real-time results
- ๐ก๏ธ Content Filtering - Comprehensive ESRB rating filters, custom content blocks, and global game banning
- ๐ Global Content Controls - System-wide content filtering that supersedes user preferences for safe environments
- ๐ ROMM Integration - Seamless integration with your ROMM game library
- ๐ Flexible Authentication - Any standards-compliant OIDC provider (Keycloak, Pocket ID, Authentik, Auth0, Okta, Entra ID) via discovery, plus basic auth with user registration
- ๐ API Key Management - Generate scoped API keys for programmatic access with Bearer token authentication
- ๐ Interactive API Docs - Complete OpenAPI 3.1 specification with dynamic server URLs at
/api/docs - โก High Performance - Redis caching, hover preloading, and optimized data fetching
- ๐จ Themeable UI - Selectable animated backgrounds and a glass sidebar theme, chosen per user
- ๐ Outbound Webhooks - Post request events as JSON to any receiver โ n8n, a download automation service, a script
๐น Preview
๐ Quick Start
Get running in 5 minutes with Docker:
# Clone repository
git clone https://github.com/XTREEMMAK/ggrequestz.git
cd ggrequestz
# Configure environment
cp .env.example .env
nano .env # Add your IGDB credentials and settings
# Start with Docker Compose
docker compose up -d
# Visit http://localhost:3000
๐ Full Quickstart Guide | ๐ง Configuration Options
๐ Documentation
Getting Started
- Quickstart Guide โ Docker setup, running from source, environment configuration
- Configuration Guide โ every environment variable the code reads
- Architecture Overview โ system design and components
Setup
- Database Setup โ PostgreSQL settings, migrations, backups
- OIDC / SSO Setup โ any OIDC provider, plus roles and admin access
- Production Deployment โ reverse proxy, TLS, scaling, upgrades
- Testing โ the test layers, and the disposable local stack
Guides
- Integrations โ ROMM, Gotify, outbound webhooks
- Custom Navigation โ role-based navigation links
- Content Filtering โ user and global filtering options
- API Documentation โ REST API reference
- Interactive API Docs โ OpenAPI specification with live examples
- Release Guide โ cutting a release
Development
- Contributing Guide โ development guidelines and standards
- Engineering Rules โ performance rules, migration constraints, commit discipline
- v1.3 Findings โ root causes and open items
- Login Animation Archive โ a past investigation
- Changelog โ version history
Getting help
- Setup problems โ the guide for that service in docs/setup/
- An integration isn't working โ INTEGRATIONS.md, then the container logs
- Development questions โ CONTRIBUTING.md
- Bugs and feature requests โ open an issue
Maintaining these docs. Documentation must describe shipped behavior. Several guides once documented environment variables that no code read, which produced user-facing bug reports (#4, #7). When you change a documented setting, grep for it in
src/before writing about it, and say so explicitly when a feature is planned rather than implemented.
๐ง Key Features Configuration
Global Content Filtering
Administrators can enforce system-wide content restrictions that supersede individual user preferences:
- Ban Specific Games - Remove specific games by IGDB ID from all search results and listings
- Keyword Blocking - Block games containing specific keywords in their titles
- Genre Filters - Exclude entire genres from appearing in the system
- ESRB Limits - Set maximum ESRB ratings globally
- Mature Content - Hide mature and NSFW content system-wide
Access these controls in Admin Panel โ Settings โ Content Filtering
Use Case: Perfect for family-friendly environments, educational institutions, or organizations requiring content compliance.
Getting IGDB API Credentials
IGDB (Internet Game Database) provides the game data for G.G. Requestz. To get your API credentials:
-
Create a Twitch Developer Account
- Visit the Twitch Developer Console
- Sign in with your Twitch account (or create one if needed)
-
Register Your Application
- Click "Register Your Application"
- Fill in the required details:
- Name: G.G. Requestz (or your preferred name)
- OAuth Redirect URLs:
http://localhost:5174(for development) - Category: Application Integration
-
Get Your Credentials
- After registration, you'll receive:
- Client ID โ Use as
IGDB_CLIENT_ID - Client Secret โ Use as
IGDB_CLIENT_SECRET
- Client ID โ Use as
- After registration, you'll receive:
-
Detailed Setup Guide
- For complete setup instructions, visit: https://api-docs.igdb.com/#getting-started
- The IGDB API uses Twitch's OAuth system for authentication
Note: These credentials are required for the application to fetch game data, search results, and cover images.
๐ณ Docker Images
Pre-built Docker images are available:
# Pull latest image
docker pull ghcr.io/xtreemmak/ggrequestz:latest
# Pull specific version
docker pull ghcr.io/xtreemmak/ggrequestz:v1.4.0
๐ v1.4.0 Release Notes: Selectable backgrounds and a glass theme for the sidebar, a restructured profile Settings area, and the outbound webhook renamed to
REQUEST_WEBHOOK_URL(N8N_WEBHOOK_URLstill works). Breaking: API key scopes are now enforced โ keys created with less than full access will start returning403on endpoints outside their scopes. See the changelog before upgrading.
๐ค Contributing
See CONTRIBUTING.md for development guidelines.
๐ License
GPLv3 License - see LICENSE file for details.
๐ Links
- Changelog - Version history and updates
- Issues - Report bugs or request features
- Discussions - Questions and community support