html!
The html! macro allows you to write HTML and SVG code declaratively. It is similar to JSX (an extension to JavaScript which allows you to write HTML-like code inside of JavaScript).
Important notes
- The
html!macro only accepts one root html node (you can counteract this by using fragments or iterators) - An empty
html! {}invocation is valid and will not render anything - Literals must always be quoted and wrapped in braces:
html! { "Hello, World" }

note
The html! macro can reach easily the default recursion limit of the compiler. It is advised to bump its value if you encounter compilation errors. Use an attribute like #![recursion_limit="1024"] in the crate root (i.e. either lib.rs or main.rs) to overcome the problem.
See the official documentation and this Stack Overflow question for details.
