https://github.com/matze/splat
A static photo gallery generator 📷
https://github.com/matze/splat
photo-gallery static-site-generator
Last synced: 4 months ago
JSON representation
A static photo gallery generator 📷
- Host: GitHub
- URL: https://github.com/matze/splat
- Owner: matze
- License: mit
- Created: 2020-11-26T21:21:34.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2025-04-28T19:30:59.000Z (5 months ago)
- Last Synced: 2025-04-28T20:33:46.911Z (5 months ago)
- Topics: photo-gallery, static-site-generator
- Language: Rust
- Homepage: https://matze.github.io/splat/
- Size: 4.43 MB
- Stars: 12
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# 📷 splat

**splat** is a command line application to generate static photo galleries from
a source directory of image files. It is a spiritual cousin of
[sigal](https://github.com/saimn/sigal) but written in Rust.## Features
- Generates static galleries for no-nonsense hosting.
- Easy installation and simple usage.
- Clean and beautiful Tailwind CSS based builtin theme.## Installation
For 64-bit Linux systems you can install pre-built binaries from the
[releases](https://github.com/matze/splat/releases). For other systems, building
and installing from source can be done via```bash
cargo install --path .
```## Usage
**splat** is a command line application and besides a source directory of image
files it requires a `splat.toml` configuration file and a theme file containing
an HTML template as well as optional assets and descriptions in `index.md`
files.To create an example configuration run `splat new` and edit `splat.toml` to your
liking, especially adapt the `input` and `output` paths. `output` will be
created if it does not exist. Then run `splat build` to generate the static
output.> [!IMPORTANT]
> The example theme relies on the Tailwind CSS v4.0 compiler. Make sure to
> install it if you want to use the theme.You can adjust the chosen collection thumbnail and title (which defaults to the
directory name) as well as add a description by adding an `index.md` file. The
first rows matching `Title: ` or `Thumbnail: ` will override the defaults,
anything else will be used as a description. Here is an example:```markdown
Title: Sunny vacation
Thumbnail: beach.jpgVacation was _just_ perfect!
```## Templates
Templates must be written in [tera
syntax](https://keats.github.io/tera/docs/#templates). The following hierarchy
of variables is available:- `collection`
- `title` of this collection
- `breadcrumbs`
- `path` to the corresponding page
- `title` of the corresponding page
- `children` of sub-collections
- `path` to the collection
- `title` of the collection
- `thumbnail` of the collection
- `images` for this collection
- `path` to the image
- `width` and `height` of the image
- `thumbnail` of the image## License
[MIT](./LICENSE)