# hyped hyped offers an ergonomic way to render html from plain rust functions ```sh cargo add hyped ``` # Write some html ```rust use hyped::*; fn render_to_string(element: Element) -> String { render(( doctype(), html(( head((title("title"), meta().charset("utf-8"))), body(element) )) )) } #[cfg(test)] mod tests { #[test] fn it_works() { assert_eq!( render_to_string(div("hyped")), "title
hyped
" ) } } ``` # Custom attributes ```rust use hyped::*; fn htmx_input() -> Element { input() .attr("hx-post", "/") .attr("hx-target", ".target") .attr("hx-swap", "outerHTML") .attr("hx-push-url", "false") } fn main() { let html: String = render(htmx_input()); // html == } ``` # Custom elements ```rust use hyped::*; fn turbo_frame(children: Element) -> Element { element("turbo-frame", children) } fn main() { let html: String = render(turbo_frame(div("inside turbo frame")).id("id")); // html == // //
inside turbo frame
//
} ```