2 个版本

0.1.1 2021 年 6 月 23 日
0.1.0 2021 年 6 月 23 日

#12 in #album

自定义许可证

17KB
397 代码行

bupkis

license Build Status

一个小型静态相册生成器。

演示相册.

功能

  • 简单安装(纯 Rust,无系统依赖)
  • 100% 静态(无服务器端渲染)
  • 可选的渐进增强(使用 JavaScript,箭头键、滑动导航)
  • 可选的每个相册和每张图片的描述(Markdown 渲染)

{反,误}-功能

  • 中央索引(每个相册都是一组生成的页面)
  • 智能缩略图(无内容感知裁剪)
  • 可配置的样式/外观(抱歉)
  • 隐藏相册(使用基本认证)或 EXIF 剥离(事先完成)

安装和使用

使用 cargo 获取

$ cargo install bupkis

指向相册目录

$ bupkis generate my-album/ /var/www/my-site
$ firefox /var/www/my-site/my-album/index.html

相册布局和配置

bupkis 加载结构如下所示的相册目录

my-album/
    img001.jpg
    img002.png
    img003.jpg
    album.yml

仅支持 JPEG 和 PNG 作为官方支持的图像格式。

album.yml 是一个 YAML 格式的配置文件,用于配置相册的顺序和描述/单个照片描述

# slugified as my-album
title: my album

# album description, rendered in the album's index
desc: |
  this is the album's description. it's *rendered* as **markdown**.

# whether or not to generate JavaScript for this album
javascript: true

# each photo of the album, in presentation order
photos:
  - name: img001.jpg
    desc: |
      individual images have descriptions too, which are also **markdown**.
  - name: img002.png
    desc: |
      image descriptions are optional, so this next one doesn't have one.
  - name: img003.jpg

依赖关系

~15–25MB
~311K SLoC