Skip to content

waynezhang/foto

Repository files navigation

foto-cover

foto

Yet another another publishing tool for minimalist photographers.

Demo site: https://foto.lhzhang.com

Features

  • Simple One binary, three commands. No database.
  • Customizable Highly customizable by configuration and template files.
  • Fast Files are handled concurrently.

Install

macOS

$ brew tap waynezhang/tap
$ brew install foto

Or download the binary from here

Nix/NixOS

for Nix users, a Flake is provided. It can be used to run the application directly or add the package to your configuration as flake input.

It also allows to try out foto, without permanent installation.

nix run github:waynezhang/foto

Consult the Nix manual for details.

Other platforms

Download the binary from here

Usage

Create a new site

~ $ foto create my_site
~ $ tree my_site
my_site
├── assets
│   ├── icons
│   │   ├── home.svg
│   │   ├── instagram.svg
│   │   └── twitter.svg
│   └── style.css
├── foto.toml # Configuration file, see below for more details.
├── media
│   └── avatar.jpg # Placeholder image for avatar.
└── templates
    └── template.html # Template file

Preview

~/my_site $ foto preview
Creating Preview...
Listening on 5000...

The default port number is 5000. It can be changed by -p flag.

Export

~/my_site $ foto export -o ~/site_docs
Exprorting sites to /Users/xxx/site_docs...

Clear cache

foto clear-cache

Customize

Basic customize foto.toml

See foto.toml

Style customize

Template and CSS styles can be modified without chagning foto binary.

The template file is placed in templates/template.html.

It's also possible to add additional settings in foto.toml (ref) and refer it in template file. foto uses html/template package in Golang. Please refer to this link for more information.

Changelogs

See CHANGELOG

LICENSE

See LICENSE

Credit

foto is highly inspried by moul.