# 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:

```sh
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.
