You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
OddCrate UX: discovery, curated collections and game detail inside Multiverse #145
Introduce OddCrate as a compact, native-feeling way to discover personally curated games from TrainerOS. Do not add a sixth primary tab or turn the application into a store/advertisement.
Navigation
Add an obvious destination for My Collection (existing installed/personal Adventures) and OddCrate (discoverable downloadable titles) within the existing Multiverse domain/navigation. Preserve the current platform/Adventure library and selection behavior.
Equal-size readable game cards, no uneven Pinterest-style masonry or endless desktop store UI.
Catalog
Landing view: a small owner-curated featured selection, recently added, categories/tags, and Top Rated.
Filters/search: genre, platform, multiplayer/controller capabilities, homebrew ROM vs native Linux, installed state, compatible device profile.
Each tile indicates name, artwork, honest compatibility, user rating (with count) and installed/update state.
Offline/cache case shows last known catalog with clear offline status; locally installed games remain playable regardless of server outage.
Game detail
Display description, screenshots, developer, genre, license/free status, platform/architecture, supported controllers, release/changelog, version, and concise Install / Play / Update / Remove as applicable.
Include a clear Donate action when creator links exist (#150), and Read reviews / Rate with eligibility status (#113) when ratings exist. Avoid displaying a fake rating when nobody has reviewed the game.
An OddCrate game should become a normal registered Adventure in the existing library when installed, not stay in a second independent launcher.
Server unavailable, insufficient disk space, incompatible runtime, removed listing and withdrawn distribution permission are distinct honest states.
Preserve selection and scroll on returning from game details, installation, Play, and app restart.
Never expose developer build scripts or raw repository URLs as ordinary user setup.
Acceptance
User can go Multiverse → OddCrate → game detail → Install → My Collection → Play in a controller-only journey.
Existing local Multiverse and Pokémon library/ScreenScraper remain untouched.
No extra primary page, nested store application, or arbitrary card sizing.
Top Rated uses shared reviews; Donate exposes only the correct developer destinations.
Real Flip/Odin plus physical TV 1080p/4K screenshots demonstrate catalog, details, installing, installed and offline states; TV card density/text and safe areas are intentionally different from handheld.
Parent: #144
Goal
Introduce OddCrate as a compact, native-feeling way to discover personally curated games from TrainerOS. Do not add a sixth primary tab or turn the application into a store/advertisement.
Navigation
Catalog
Game detail
Display description, screenshots, developer, genre, license/free status, platform/architecture, supported controllers, release/changelog, version, and concise Install / Play / Update / Remove as applicable.
Include a clear Donate action when creator links exist (#150), and Read reviews / Rate with eligibility status (#113) when ratings exist. Avoid displaying a fake rating when nobody has reviewed the game.
An OddCrate game should become a normal registered Adventure in the existing library when installed, not stay in a second independent launcher.
States and errors
Acceptance