The Hidden Gaming Lair — Web Components
This is the multi-app frontend monorepo for The Hidden Gaming Lair, containing apps, websites, and shared UI components.
This project is not open source. You are not permitted to use or repurpose this code for your own projects.
All rights reserved © The Hidden Gaming Lair.
This repo is part of a larger ecosystem of tools and services powering The Hidden Gaming Lair. Some of these repositories are private and not open source:
Repository | Description |
---|---|
thgl-actors-api |
API for in-game location tracking with seed-aware storage and filters. |
thgl-data-forge |
Data mining and API project for serving static game data (locations, filters, icons, etc.). |
thgl-api-forge |
Dynamic API + database layer (starting with comments, more to come). |
thgl-memory-access |
Game-specific memory reading projects for real-time data extraction. |
thgl-companion-app |
Windows companion app with in-game overlay and position tracking. |
thgl-discord-bot |
Discord bot exposing update & info channels via API (used for release notes on apps/web). |
thgl-web-components |
Multi-app frontend monorepo containing apps, websites, and shared UI components. |
- Monorepo: TurboRepo
- Runtime & Package Manager: Bun
- Frameworks: Next.js / Vite (React-based)
- Languages: TypeScript
- Shared packages: in
packages/ui
(UI components),packages/lib
(utilities, logic)
- Run and explore any app (
bunx turbo run dev --filter=...
) - Follow the code style and structure already in use
- PRs welcome — especially UI tweaks, content improvements, or bugfixes
- Using Claude Code? See
CLAUDE.md
for AI-specific development guidance
- OS: Windows recommended (Overwolf SDK support). WSL should work too.
- Bun: Install Bun
- VSCode + Extensions:
Use the recommended extensions in.vscode/extensions.json
, especially:esbenp.prettier-vscode
dbaeumer.vscode-eslint
bun install
To start a specific app (e.g. dune-awakening-web
):
bunx turbo run dev --filter=dune-awakening-web...
You can swap the app name to run a different project.
Most apps do not require any .env
setup.
Only thgl-web
and thgl-app
use environment variables (API access, database, etc.).
apps/
├─ game-name-web/ # Public website (e.g., duneawakening.th.gl)
├─ game-name-overwolf/ # Overwolf in-game app
├─ thgl-web/ # Main www.th.gl site (blog, portfolio, etc.)
└─ thgl-app/ # Windows companion app (desktop overlay + tracking)
packages/
├─ ui/ # Shared UI components (React)
└─ lib/ # Shared logic, utilities, types
Each app contains a src/config.ts
file for routing and game-specific setup.
- Format: Prettier (
Format on Save
recommended) - Linting: ESLint
- Language: TypeScript only
- Testing: None (rely on TS, lint, and formatting)
Follow the style and patterns used in the existing codebase.
- Do not push to
main
directly. - Create a Pull Request for all contributions.
- Only the repo owner can merge into
main
.
Type | How it works |
---|---|
Websites | Automatically deployed to Vercel on change |
Overwolf Apps | Must be manually updated (via manifest.json ) |
Ask in coding channels on my Discord: https://th.gl/discord
Open issues and suggestions in #suggestions-issues channel