| Crates.io | utsusu |
| lib.rs | utsusu |
| version | 0.1.0 |
| created_at | 2025-08-03 04:29:55.909601+00 |
| updated_at | 2025-08-03 04:29:55.909601+00 |
| description | A straight-forward templating tool for directories and individual files |
| homepage | |
| repository | https://github.com/jciskey/utsusu |
| max_upload_size | |
| id | 1779352 |
| size | 82,710 |
写す (utsusu) -- Japanese verb, "to copy; to duplicate; to reproduce"
utsusu is a simple library (and associated CLI tool) for copying templates into a final location. These templates can be either a full directory, or a single file, whichever makes sense for your needs.
utsusu intends to be a flexible tool, giving you the benefits of a full directory-templating system while also allowing you to use that same system for stamping out individual files.
Specific use-cases:
examples/rust-script for an example of this)examples/utsusu-template for an example of this)stamp-cli is a Rust CLI tool that also does this for directories.The first three are focused on directories, and do not let you stamp out individual files separate from a directory. To do that, you generally have to directly invoke a templating library such as Jinja2, Tera, or something else. The fourth is focused on letting you easily generate new individual pages, but doesn't allow you to generate a directory from a template if you have a standard format for different sections of your site (how much of a pain this is is entirely up to the site you're building).
To see full usage instructions of the CLI, run utsusu --help.
Example usage:
utsusu --templates-dir examples utsusu-template
Sample configurations can be found in the examples directory. The utsusu-template example will produce a simple single-file template that you can work off of to get started.