[package]
edition = "2021"
name = "ruitl"
version = "0.2.1"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Template compiler for type-safe, server-rendered HTML components in Rust"
documentation = "https://docs.rs/ruitl"
readme = "README.md"
keywords = [
"html",
"template",
"ssr",
"components",
"templ",
]
categories = [
"web-programming",
"template-engine",
"compilers",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/sirhco/ruitl"
[package.metadata.docs.rs]
features = [
"server",
"static",
"dev",
"testing",
]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = [
"server",
"static",
"dev",
]
dev = [
"dep:hotwatch",
"dep:notify",
]
minify = ["dep:minify-html"]
server = [
"dep:hyper",
"dep:hyper-tls",
"tokio/rt-multi-thread",
]
static = []
testing = []
[lib]
name = "ruitl"
path = "src/lib.rs"
[[bin]]
name = "ruitl"
path = "src/main.rs"
[[example]]
name = "advanced_features_demo"
path = "examples/advanced_features_demo.rs"
[[example]]
name = "basic_usage"
path = "examples/basic_usage.rs"
[[example]]
name = "hello_world"
path = "examples/hello_world.rs"
[[example]]
name = "html_output_demo"
path = "examples/html_output_demo.rs"
[[example]]
name = "server_integration"
path = "examples/server_integration.rs"
[[example]]
name = "streaming_demo"
path = "examples/streaming_demo.rs"
[[example]]
name = "template_compiler_demo"
path = "examples/template_compiler_demo.rs"
[[test]]
name = "cli_generated_code_test"
path = "tests/cli_generated_code_test.rs"
[[test]]
name = "codegen_snapshots"
path = "tests/codegen_snapshots.rs"
[[test]]
name = "component_composition"
path = "tests/component_composition.rs"
[[test]]
name = "error_suggestions"
path = "tests/error_suggestions.rs"
[[test]]
name = "parser_debug"
path = "tests/parser_debug.rs"
[[test]]
name = "scaffold_test"
path = "tests/scaffold_test.rs"
[[test]]
name = "template_compilation"
path = "tests/template_compilation.rs"
[[test]]
name = "testing_helpers_test"
path = "tests/testing_helpers_test.rs"
[[bench]]
name = "codegen"
path = "benches/codegen.rs"
harness = false
[[bench]]
name = "compile_dir"
path = "benches/compile_dir.rs"
harness = false
[[bench]]
name = "parser"
path = "benches/parser.rs"
harness = false
[[bench]]
name = "render"
path = "benches/render.rs"
harness = false
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.clap]
version = "4.0"
features = [
"derive",
"cargo",
]
[dependencies.colored]
version = "2.0"
[dependencies.dirs]
version = "5.0"
[dependencies.futures]
version = "0.3"
[dependencies.hotwatch]
version = "0.4"
optional = true
[dependencies.html-escape]
version = "0.2"
[dependencies.hyper]
version = "0.14"
features = ["full"]
optional = true
[dependencies.hyper-tls]
version = "0.5"
optional = true
[dependencies.md5]
version = "0.7"
[dependencies.minify-html]
version = "0.11"
optional = true
[dependencies.notify]
version = "6.0"
optional = true
[dependencies.proc-macro2]
version = "1.0"
[dependencies.pulldown-cmark]
version = "0.9"
[dependencies.quote]
version = "1.0"
[dependencies.ruitl_compiler]
version = "0.2.1"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.syn]
version = "2.0"
features = ["full"]
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
[dependencies.tokio-stream]
version = "0.1"
features = ["sync"]
[dependencies.toml]
version = "0.8"
[dependencies.urlencoding]
version = "2.1"
[dependencies.uuid]
version = "1.0"
features = ["v4"]
[dependencies.walkdir]
version = "2.3"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.insta]
version = "1.40"
[dev-dependencies.pretty_assertions]
version = "1.0"
[dev-dependencies.prettyplease]
version = "0.2"
[dev-dependencies.tempfile]
version = "3.0"
[dev-dependencies.tokio-test]
version = "0.4"
[build-dependencies.ruitl_compiler]
version = "0.2.1"
[build-dependencies.walkdir]
version = "2.3"
[profile.dev]
opt-level = 0
debug = 2
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"