1.6 KiB
Game Grid
a web ui for displaying games saved on a NAS in a easy to browse and download format. Games are stored in two locations that we will call libraries one public and one private. games in the public library are visable to all without a sign in while the games in the private library require the user to be signed in to be visable.
when signed in, games from both libraries should be displayed together in a grid format showcasing their cover art. Clicking on a game should display more information about the game and provide download buttons.
Library Folder Conventions
Games ("type": "games")
Each game is a subdirectory containing:
Games/ └── My Game Title/ ├── My Game Title.zip # Required — the downloadable archive. ├── cover.png # Optional — portrait cover art (case-insensitive) ├── widecover.jpg # Optional — landscape/hero cover art (case-insensitive) └── screenshots/ └── image1.jpg #optional screenshot images
the game archive will be in different formats depending on the platform it supports. zip files used for windows games, .app files used for macos, and the various linux archive types like tar.gz for linux. If multiple archives exist the download button should include a drop down to allow the user to select the specific version to download. The drop down items should indicate their platform with an icon
Game metadata
Data to store about games include:
- title (taken from folder name)
- description (editable by signed in user)
- genre (editable by signed in user)
- tags (many to many relationship with games, assignable by signed in user)