1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
[]
= "plates-cli"
= "Command-line static site generator over a prov archive: build, watch, serve and clean."
= true
= true
= true
= true
= true
= true
= "README.md"
= ["static-site-gen", "prov", "cli", "publishing", "website"]
= ["command-line-utilities", "web-programming"]
# The crate is `plates-cli`; the installed command is `plates`.
[[]]
= "plates"
= "src/main.rs"
# The application layer, and the only one in this workspace that is allowed to
# have opinions a library must not: where a build lands, what a site declaration
# is *spelled* like, and how a preview is served. `plates` deliberately does not
# read a config vocabulary — see its `spec` module — so the `sites:` block this
# binary reads is defined here, in `config.rs`, and nowhere else.
[]
= ["yaml"]
= ["plates/yaml", "plates-render/yaml"]
= ["plates/json", "plates-render/json"]
= ["plates/toml", "plates-render/toml"]
= ["plates/fig-lang", "plates-render/fig-lang"]
[]
= { = true }
# With `templating` and `syntax-highlighting`, unlike `plates` itself: running
# the render pipeline is the caller's job, and this is the caller. Without the
# first a body's template directives would be published as literal text; without
# the second every fenced block would publish uncoloured. Both are the weight a
# static site generator is *for* — it is the library crates that have to stay
# able to decline it.
= { = true, = [
"templating",
"syntax-highlighting",
] }
# prov is deliberately *not* a dependency of its own here. Workspace discovery,
# the config document and the id registry are all reached through
# `plates::prov`, which `plates` re-exports for exactly this reason: one prov in
# the tree, and no way for this crate to resolve a different version of the
# `Workspace` it hands to `collect_site`.
= { = "4.5", = ["derive", "env"] }
[]
= "3"