57 lines
2.1 KiB
Text
57 lines
2.1 KiB
Text
# content.just — content authoring recipes (consumable module)
|
|
#
|
|
# Thin sugar over the installed `rustelo-content` CLI. Sites consume it with:
|
|
#
|
|
# mod authoring ".just/content.just" # symlink → this file in the source repo
|
|
#
|
|
# then run `just authoring images --type blog --provider gemini --dry-run`, etc.
|
|
# (Named `authoring` in sites to avoid colliding with a flat `content` recipe.)
|
|
#
|
|
# Recipes are pure `*args` passthrough: write the exact flags you'd give
|
|
# `rustelo-content` — just forwards every token after the recipe name verbatim.
|
|
#
|
|
# [no-cd] is mandatory: inside a `mod`, just changes into the MODULE's directory
|
|
# by default, which would break the scripts' ./site/content path defaults. With
|
|
# [no-cd] the recipes run in the invocation PWD (the site root containing site/).
|
|
#
|
|
# Requires `rustelo-content` on PATH — install from the source repo with
|
|
# `just content-install`.
|
|
|
|
# default — list recipes instead of running one (a bare `just <mod>` otherwise
|
|
# fires the first recipe, which would start real generation).
|
|
[no-cd]
|
|
default:
|
|
@echo "authoring recipes: images | sync | validate | validate-ids | new | copy-images"
|
|
@echo "usage: just <mod> <recipe> [flags] e.g. just authoring images --type blog --provider gemini --dry-run"
|
|
@echo "direct: rustelo-content <command> --help"
|
|
|
|
# Generate AI images (provider-agnostic openai|gemini). Pass any generate-images
|
|
# flags: --type --lang --slug --provider --model --quality --dry-run --force ...
|
|
[no-cd]
|
|
images *args:
|
|
rustelo-content images {{ args }}
|
|
|
|
# Translation parity, e.g. `just authoring sync validate-translations`.
|
|
[no-cd]
|
|
sync *args:
|
|
rustelo-content sync {{ args }}
|
|
|
|
# Validate content consistency.
|
|
[no-cd]
|
|
validate *args:
|
|
rustelo-content validate {{ args }}
|
|
|
|
# Validate cross-language id consistency.
|
|
[no-cd]
|
|
validate-ids *args:
|
|
rustelo-content validate-ids {{ args }}
|
|
|
|
# Scaffold a new content item, e.g. `just authoring new blog --title "..."`.
|
|
[no-cd]
|
|
new *args:
|
|
rustelo-content new {{ args }}
|
|
|
|
# Copy _images/ into the public assets tree.
|
|
[no-cd]
|
|
copy-images *args:
|
|
rustelo-content copy-images {{ args }}
|