#static-site-generator #static-website

app cheetah

An extremely fast and flexible static site generator

8 releases

0.2.3 Jul 17, 2024
0.2.2 Mar 20, 2024
0.2.1 Dec 28, 2023
0.1.3 Dec 28, 2023

#19 in #static-website

MIT license

330KB
714 lines

Cheetah

A static site generator written in Rust.

FlakeHub

Installation

Sites as Flakes

The recommended way to install Cheetah is by creating a flake.nix to build your site.

Here's a simple one to get you started (based on the one used for Cheetah's docs):

{
  inputs = {
    cheetah.url = "github:aleksrutins/cheetah";
    utils.url = "github:numtide/flake-utils";
  };

  outputs = { self, utils, cheetah }:
    let config = {
      # Pass your configuration options here.
    };
    in utils.lib.eachDefaultSystem (system: {
      packages.default = (cheetah.buildSite.${system} ./. {
        name = "site";
        inherit config;
      });

      devShells.default = (cheetah.createDevShell.${system} { inherit config; });
    });
}

To build your site, just use nix build . - see <workflows/docs.yml> for an example of how to use this in CI.

Normal Usage

Alternatively, you can use it as a normal binary.

Either install it as a flake using Nix (recommended):

nix profile install github:aleksrutins/cheetah

Or install it from Cargo:

cargo install cheetah

Usage

See the website.

Dependencies

~22–52MB
~826K SLoC