Ryan Chou 6c3ee112f9
All checks were successful
Deploy on push / deploy (push) Has been skipped
add: build script that renders index from meals
2026-03-22 19:37:14 -07:00
2026-03-22 18:51:24 -07:00
2026-03-22 18:51:24 -07:00
2026-03-22 18:51:24 -07:00
2025-08-12 01:58:41 +08:00
2026-03-22 18:51:24 -07:00
2026-03-22 19:36:17 -07:00

Gallery

Static photo gallery for logging meals and food memories.

The site is based on the HTML5 UP Lens template and currently ships as a plain static site: HTML, CSS, JavaScript, and local image assets.

Repo Layout

  • templates/index.html: source template for the main gallery page
  • index.html: generated static gallery page
  • assets/: site CSS, JavaScript, fonts, and audio
  • images/fulls/: full-size gallery images
  • images/thumbs/: gallery thumbnails
  • data/meals.json: source of truth for gallery entries
  • scripts/build.js: renders static pages from templates and data
  • package.json: minimal Node build entrypoint

Content Workflow

Gallery entries live in data/meals.json, and index.html is generated from templates/index.html.

After editing content or templates, rebuild the site with:

npm run build

The build currently renders the main page without changing the existing Lens gallery structure, so the current client-side viewer code continues to work.

Image Conventions

  • Full-size images and thumbnails share the same numeric ID
  • Full-size images live at images/fulls/<id>.jpg
  • Thumbnails live at images/thumbs/<id>.jpg
  • Optional thumbnail focal positioning is stored per entry as position

Planned Features

  1. Better thumbnail implementation, either a small script to automatically convert full-size images into thumbnails and a build system, or another simpler approach.
  2. Automatic image ingestion, potentially with a stronger data model if the static workflow becomes too limiting.
  3. An Elo-style ranking page that shows two food images at a time and updates rankings automatically based on the selected winner.
  4. General cleanup and history cleanup once the bigger structural changes are in place.
Description
No description provided
Readme 57 MiB
Languages
JavaScript 43.3%
SCSS 20.6%
HTML 20.1%
CSS 15.9%