hornbeam/README.md

1.2 KiB

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:

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.