Skip to content

Issue#33 lazy loading toast#48

Open
ToastedToast00 wants to merge 14 commits intomainfrom
Issue#33LazyLoading-Toast
Open

Issue#33 lazy loading toast#48
ToastedToast00 wants to merge 14 commits intomainfrom
Issue#33LazyLoading-Toast

Conversation

@ToastedToast00
Copy link
Contributor

Closes #33

This one took a little bit of time for sure.

Human summary:
Added game update script to check for updates, then use simple-git to go through the action of pulling or cloning (or nothing if no action is needed).

Added game.json file to store information about games listed.

Added simple git to packages

Tested script via "node scripts/gameUpdate.js" and it runs fine without games in game.json

AI summary:

Overview
This update introduces the initial version of the game update system, enabling the server to automatically detect, install, and update games listed in game.json. The system compares local and remote manifests, determines whether an update is required, and uses Git operations to keep game files current.

What’s Included

  1. Added automated game update script (scripts/gameUpdate.js)
  • Loads and validates game.json
  • Checks for local game folders and manifests
  • Fetches remote manifest.json files from GitHub
  • Compares version numbers to determine update status
  • Uses simple-git to:
  • Clone missing games
  • Pull updates for existing games
  • Skip games that are already up‑to‑date
  • Includes detailed console logging for step‑by‑step visibility
  1. Added Interlinked/game.json
  • Stores metadata for each game (name, folder, repo URL, tags, description)
  • Serves as the source of truth for the update script
  1. Added simple-git as a project dependency
  • Installed via npm and added to package.json
  • Enables Git clone/pull operations directly from Node
  1. Verified script behavior
  • Tested by running:
    node scripts/gameUpdate.js
  • Confirmed the script runs correctly even when game.json contains no games
    (gracefully exits with appropriate logs)

Copy link
Contributor

@logprogrammer92 logprogrammer92 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. It is interesting how you used a .gitkeep file so that the games folder will be tracked by git but no other file in that folder will be tracked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Game Lazyloading

2 participants