Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/yuma140902/tempura

Pipeline-based Static Site Generator written in Rust
https://github.com/yuma140902/tempura

rust ssg static-site-generator

Last synced: about 2 months ago
JSON representation

Pipeline-based Static Site Generator written in Rust

Awesome Lists containing this project

README

        

# Tempura

[![](https://img.shields.io/github/actions/workflow/status/yuma140902/tempura/ci.yml?logo=linux&logoColor=white&label=CI%20on%20Linux)](https://github.com/yuma140902/tempura/actions)
[![](https://img.shields.io/github/actions/workflow/status/yuma140902/tempura/ci.yml?logo=windows&logoColor=white&label=CI%20on%20Windows)](https://github.com/yuma140902/tempura/actions)
[![](https://img.shields.io/github/actions/workflow/status/yuma140902/tempura/ci.yml?logo=apple&logoColor=white&label=CI%20on%20macOS)](https://github.com/yuma140902/tempura/actions)
[![](https://img.shields.io/crates/v/tempura?color=blue)](https://crates.io/crates/tempura)
[![](https://img.shields.io/docsrs/tempura)](https://docs.rs/tempura/)

Tempura is a pipeline-based Static Site Generator (SSG) written in Rust. You can define pipelines to generate your site from various resources such as Markdown, JSON, plain text, [Handlebars](https://handlebarsjs.com/) templates, pictures, etc.

## Installation

### Build from source

```sh
cargo install tempura
```

### Download binary

You can download a binary archive from [releases page](https://github.com/yuma140902/tempura/releases).

```sh
# Run one of the following to download binary archive
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-aarch64-apple-darwin.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-aarch64-unknown-linux-gnu.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-aarch64-unknown-linux-musl.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-i686-pc-windows-msvc.zip
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-i686-unknown-linux-gnu.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-i686-unknown-linux-musl.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-x86_64-apple-darwin.tar.gz
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-x86_64-pc-windows-msvc.zip
wget https://github.com/yuma140902/tempura/releases/latest/download/tempura-x86_64-unknown-linux-musl.tar.gz
```

Or you can download and install with [cargo-binstall](https://github.com/cargo-bins/cargo-binstall).

```sh
cargo binstall tempura
```

## Example

### yuma14.net

- Repo:
- Generated website:

## Documentation

https://yuma14.net/tempura-doc/

## How to make releases

1. `release/v1.2.3` のような名前のブランチを切る
2. `Cargo.toml` のバージョン番号を更新する
3. 手元で `cargo build` を実行して `Cargo.lock` を更新する
4. Pull Request を作る。[pre-release.yml](.github/workflows/pre-release.yml) が実行されて [CHANGELOG.md](CHANGELOG.md) が更新される。
5. すべてのチェックが通れば Pull Request をクローズする。[release.yml](.github/workflows/release.yml) が実行されて crates.io と GitHub のリリースページにリリースが作られる。
6. ブランチは削除せずに残しておくものとする