Static, single-page GitHub Pages version of the Gothic II Classic Revived website.
Create both under Settings → Secrets and variables → Actions → Repository secrets:
YOUTUBE_API_KEY— YouTube Data API v3 key used only during the build.VPS_IMAGE_MANIFEST_URL— private build-time URL used to discover the screenshots.
Neither secret is written into the published site.
The variable name is kept as VPS_IMAGE_MANIFEST_URL, but the loader accepts three source formats so the same secret can point at whichever endpoint is practical on the VPS.
[
"01-08-2026_12-30.jpg",
"02-08-2026_18-45.jpg"
]or:
{
"images": [
"01-08-2026_12-30.jpg",
"02-08-2026_18-45.jpg"
]
}An object may optionally define base_url.
The secret may point directly to a normal Apache/nginx directory index containing links to the image files. The builder extracts the image links automatically.
A newline-separated list of image filenames/URLs is also accepted. Empty lines and lines starting with # are ignored.
Relative paths are resolved against the configured source URL. Image filenames must follow the existing DD-MM-YYYY_HH-MM convention, with an optional (N) duplicate suffix.
The stylesheet expects these files in site/font/:
GothicII.ttf— default/body textGOTHIC3.TTF— headings and titlesGOTHIC1.TTF— links, captions, dates and media counters
All site styling is in one file:
site/styles/main.css
There are no separate page/gallery/video override stylesheets.
- Put the project contents at the repository root.
- Put the three fonts above in
site/font/. - Add
YOUTUBE_API_KEYandVPS_IMAGE_MANIFEST_URLas repository secrets. - Push to
main. - In Settings → Pages → Build and deployment → Source, choose GitHub Actions.
- Run the workflow manually or let the push trigger it.
No gh-pages branch is required.
The build downloads source images temporarily and produces:
- gallery previews: maximum width 1920 px, WebP quality 82
- thumbnails: maximum width 400 px, WebP quality 78
Full originals are not included in the Pages artifact. The public images.json contains only generated Pages paths and display metadata, never the source URL.
The public site uses only site/index.html. Main, Images and Videos are sections of that document. JavaScript switches between them without changing the URL, hash, query string, or browser history.
If a visitor explicitly arrives through /index.html, the frontend canonicalizes that once to the containing directory. Reloading always returns to Main by design.
The workflow runs on pushes to main, manually through workflow_dispatch, and every six hours. Every run creates a clean _site/ deployment.