clt

Configurable Leathercraft Templates

CLT

Configurable Leathercraft Templates, my personal leathercraft templates.

I'm an amateur and these designs are my learning process. Use at your own risk.

Available at https://clt.pocka.jp/.

Licenses

This repository contains vendored files at vendor/ directory. vendor/REUSE.toml states the licenses of each vendored projects.

Development

Use of Nix Flakes is the recommended way to setup a development environment.

Building

For cache enabled builds, enter Nix devShell then run zig build:

nix develop
zig build

This generates static files at zig-out/ directory.

Add --watch option to Zig to compile on file changes:

nix develop
zig build --watch

Add -Doptimize=ReleaseSafe to disable Elm debugger and optimize JavaScript file using Closure Compiler.

nix develop
zig build -Doptimize=ReleaseSafe
# You can add "--watch" too, but beware, closure-compiler is soooo slow.

Or simply run nix build:

nix build

This generates static files at result/ directory.

Serving

To quickly serve zig-out/ locally, this project has Caddyfile so you can simply run,

nix run .#caddy run

# or "caddy run" for non-Flakes setup

and you can access built files at http://localhost:8080.

Formatting

This project uses EditorConfig for base convention and dprint for source code formatting.

nix fmt

# or "dprint fmt" for non-Flakes setup

Licenses Checking

Every file inside this repository has to adhere to REUSE, a specification for copyright and license information annotation. Use the REUSE tool to validate and manage copyright and license information.

# Checks every file adheres to the REUSE specification.
nix run .#reuse lint

# Show help text for the REUSE tool.
nix run .#reuse -- --help

# non-Flakes equivalents are "reuse lint" and "reuse --help"