Add game portal — 187 games, dark night UI, search & categories#7
Open
Add game portal — 187 games, dark night UI, search & categories#7
Conversation
- index.html: single-page portal with sidebar + game grid + iframe overlay
- style.css: dark night theme (#08080f bg, purple accent, category colors)
- games.js: 187 games from 5 sources (UGS-Assets, Neruvy, genizy, mathtut0r1ng)
- app.js: category filtering, live search, iframe game loading, fullscreen
Sources: bubbls/UGS-Assets, Neruvy/neruvy-games, Neruvy/web-port,
genizy/web-port, mathtut0r1ng/mathtut0r1ng.github.io
https://claude.ai/code/session_013KzmqWZCgkEN2uqGkURs4M
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Game loading:
- Fetch raw HTML from raw.githubusercontent.com instead of embedding GitHub Pages URLs
- Inject <base href="..."> so relative game assets (Unity, Construct 2, etc.) still
resolve from the original GitHub Pages host
- Fallback to direct src= embed if fetch fails
New UI:
- Fixed top header with logo, centered search bar, live game count
- Horizontal scrollable category pills (replaces old sidebar)
- Larger game cards (190px min) with play-button hover overlay
- Loading spinner + text while game fetches
- ESC to close, F for fullscreen
games.js: each entry now has { raw, url } — raw for fetching HTML,
url as the <base href> for asset resolution
https://claude.ai/code/session_013KzmqWZCgkEN2uqGkURs4M
Root cause: srcdoc set the iframe origin to the Vercel domain, so when Unity/Construct2 games fetched their own asset files from bubbls.github.io it was cross-origin and CORS blocked them. Direct iframe.src lets each game run in its own origin so all same-origin asset fetches work correctly. Changes: - app.js: remove fetch/srcdoc approach, use frame.src = g.url directly - games.js: remove raw URL field, back to plain GitHub Pages URLs - index.html: fix allow attr (remove invalid pointer-lock feature), remove redundant allowfullscreen attr, add emoji favicon (fixes 404) Remaining expected warnings (not fixable from our side): - "can escape sandboxing" — removed sandbox entirely for max game compat - Service worker errors from within games — internal to game code - Ad blocker blocking ima3.js — browser extension, not our code https://claude.ai/code/session_013KzmqWZCgkEN2uqGkURs4M
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Sources: bubbls/UGS-Assets, Neruvy/neruvy-games, Neruvy/web-port,
genizy/web-port, mathtut0r1ng/mathtut0r1ng.github.io
https://claude.ai/code/session_013KzmqWZCgkEN2uqGkURs4M