#html-templating #templating #web #html #ssg #macro #proc-macro

ibex_alpha

Rust 中用于 SSG/SSR 的舒适 HTML 模板

1 个不稳定版本

0.1.0 2024 年 1 月 10 日

#591 in 模板引擎

MIT 许可证

36KB
912

Ibex

Ibex 通过过程宏提供 Rust 中用于 SSG/SSR 的舒适 HTML 模板。

仍在开发中。

请查看 Ibex Template 以快速入门。

示例

fn at_blog(blog: BlogPost) -> Document {
    // Creates a `View` and converts to `Document`
    view! {
        // Calls a function `header(true)`
        @header[true]

        // Some html elements
        h2 { [blog.title] }
        h3 { i {[blog.author]} }

        // Include any variables in scope
        p {
            [blog.body]
        }

        // Variables can be used in attributes
        // Use a slash to signify an empty element body
        img [src=blog.image]/

        // Any syntax can be used with `if` or `for` statements (except `else-if`)
        [:if let Some(image_src) = blog.image {
            image [src=image_src]/
        }]
    }
    .into()
}

Ibex logo

依赖项

~4.5MB
~87K SLoC