Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VOB Catalog — GitHub Pages

Static GitHub Pages conversion of the VOBBILDER catalog.

What is kept in Git

The repository contains only the application, the VOB catalog metadata, the fallback preview image, and the build scripts. The thousands of VOB screenshots are not committed.

The build reproduces the original image hierarchy inside the Pages artifact, including paths such as:

  • g1/_intern/...
  • g1/items/...
  • g2/_intern/...
  • g2/items/...
  • g2/items/addon/...
  • interactive/...

The frontend therefore keeps the same model/path semantics as the original package.

Required GitHub secret

Create this repository secret under Settings → Secrets and variables → Actions:

VPS_IMAGE_MANIFEST_URL

Set it to the HTTP/HTTPS root directory that contains the VOBBILDER image tree. It should be the directory above g1/, g2/, and interactive/. A trailing slash is optional.

Despite the historical variable name, this value is used as the remote image-tree root. The URL is consumed only by GitHub Actions and is never placed in the deployed website.

Font

The original package contains GothicII.ttf. Put your copy at:

site/font/GothicII.ttf

The stylesheet will use it for the site headings. The font file is intentionally not duplicated in this package.

GitHub Pages setup

  1. Push the contents of this directory to the repository root on main.
  2. In Settings → Pages, choose GitHub Actions as the source.
  3. Add VPS_IMAGE_MANIFEST_URL as described above.
  4. Run Build and deploy GitHub Pages, or push a commit to main.

No gh-pages branch is required.

Build behavior

python scripts/build.py:

  1. Creates a clean _site/ directory.
  2. Reads site/data/catalog.json.
  3. Derives every expected source image path from the catalog.
  4. Downloads each unique JPG from the remote root with bounded concurrency and per-request retries.
  5. Retries only failed paths in progressively gentler retry rounds before treating the build as failed.
  6. Preserves the image hierarchy under _site/assets/vobs/.
  7. Generates a 100×100 WebP thumbnail under _site/assets/thumbs/.
  8. Writes a small non-sensitive build summary.
  9. Refuses deployment if the generated site reaches GitHub Pages' 1 GiB site-size limit.

The remote root itself is never stored in catalog.json, build.json, or browser JavaScript.

Local build

python -m pip install -r requirements.txt
VPS_IMAGE_MANIFEST_URL="http://your-server/path/" python scripts/build.py

On PowerShell:

$env:VPS_IMAGE_MANIFEST_URL = "http://your-server/path/"
python scripts/build.py

Slow VPS tuning

The defaults are intentionally conservative for a small HTTP origin serving thousands of files:

  • IMAGE_DOWNLOAD_WORKERS=5
  • IMAGE_DOWNLOAD_TIMEOUT=60
  • IMAGE_DOWNLOAD_ATTEMPTS=4
  • IMAGE_RETRY_ROUNDS=3

Normally you do not need to set these. If the VPS is still overloaded, lower IMAGE_DOWNLOAD_WORKERS to 3 or 2. Failed files are retried after the main pass with fewer workers and longer timeouts.

About

Quick overview of Gothic models like decoration, interactive objects or items.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages