hornbeam/README.md

32 lines
1.2 KiB
Markdown

# Hornbeam Template Engine
WIP. Will be: a lightweight and nimble HTML templating engine, designed for component reuse and ease of use with HTMX, whilst not harming iterative development time.
## Crates
* `hornbeam` — usual point of entry to the engine, useful in applications.
* `hornbeam_grammar` — grammar definition for Hornbeam templates.
* `hornbeam_ir` — intermediate representation for Hornbeam templates.
* `hornbeam_interpreter` — interpreter for Hornbeam templates, using `bevy_reflect` and being hot-reloadable. Useful in debug builds.
* `hornbeam_macros` — macros for compile-time template compilation to Rust. Useful in release builds.
## Licence
Currently under the AGPL 3 or later, but this is relatively likely to be changed at a later date.
See `LICENCE.txt`.
## Development
### Releasing
This is the command used to cut a release:
```shell-commands
cargo ws publish patch --all --force '*'
```
* `patch` could be `major` or `minor` instead.
* `--force '*'` means all packages are bumped, even though they have no changes. This keeps the version numbers in sync.
* `--all` means `demo_hornbeam_project` will be bumped even though it is not published.