Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/xXmizzeryXx/zenodeployment/llms.txt

Use this file to discover all available pages before exploring further.

Git import lets you pull games straight from a public repository without downloading anything manually. Zeno fetches the repo’s file tree, identifies game folders, presents a checklist, and downloads only the games you select — then registers and saves them exactly like a manual upload.

Supported forges

ForgeExample URL
GitHubgithub.com/owner/repo
GitLab (hosted)gitlab.com/owner/repo
GitLab (self-hosted)git.example.com/owner/repo
Forgejo / Giteagit.gay/owner/repo, codeberg.org/owner/repo, gitea.com/owner/repo
You can also use a bare owner/repo shorthand without a hostname. Zeno defaults to git.gay for bare shorthands.

How to import

1

Open the GIT IMPORT tab

Click ADD GAMES in the top bar, then select the GIT tab. Alternatively, click GIT / R2 on the empty-state screen.
2

Paste the repo URL

Enter the full repository URL (e.g. github.com/user/repo) or a bare owner/repo shorthand, then click SCAN.
3

Zeno fetches the repo tree

Zeno makes two API requests: one for repository info and one for the full file tree. GitLab responses are paginated — Zeno fetches up to 100 files per page automatically.
4

Select games to download

A checklist of detected game folders appears. Each entry shows the folder name and file count. Select the games you want, then click LOAD SELECTED.
5

Download and register

Zeno downloads each selected game’s files, registers them with the Service Worker via REGISTER_GAME, and saves them to IndexedDB. The games appear in your library immediately.

How game folders are detected

Zeno looks for folders at the top level of the repository that contain an index.html. Nested games — for example games/subgame/index.html — are not detected. Single-game repos: if the repository root itself contains an index.html, Zeno treats the entire repo as one game and lists it under the repository name.

Download behaviour

Zeno fetches each file using the forge’s raw file URL. If a raw fetch fails (for example, due to a network error or a private file), Zeno falls back to the Forgejo contents API, which returns file content as base64 and is decoded client-side.

Rate limits and restrictions

GitHub allows 60 unauthenticated API requests per hour per IP address. Zeno uses exactly 2 requests per repo scan (repo info + file tree), so you can scan up to 30 repos per hour without hitting the limit. Downloading game files uses the raw CDN (raw.githubusercontent.com), which has a separate, more generous limit.
GitLab’s tree API returns results in pages. Zeno fetches up to 100 files per page and handles pagination automatically, so large repos are fully scanned without manual intervention.
Some networks (such as school proxies) block raw.githubusercontent.com. If GitHub downloads fail in your environment, try importing from git.gay or another accessible Forgejo instance instead. Forgejo instances use their own raw file URLs, which are typically not blocked by the same rules.
Only public repositories are supported. Private repos require authentication tokens, which Zeno does not currently handle.

After import

Downloaded games are saved to IndexedDB and re-registered with the Service Worker on every subsequent page load — the same persistence behaviour as manual uploads. See Playing games for how Zeno handles SW restarts transparently.

Build docs developers (and LLMs) love