Repository navigation
Questions and Answers
Leonard Ramminger edited this page Aug 22, 2026
·
1 revision
How Tempify collects values and uses them in templates.
| Source | Description |
|---|---|
questions.lua |
Definitions in the template (type, default, validation) |
Template .env
|
Environment variables in template root |
| Configuration |
defaults in global/workspace config |
--answers |
JSON file |
--set |
CLI (highest priority) |
Interactive / --tui
|
Prompt for missing required values |
- Question defaults and derived defaults (e.g.
slugify(project_name)) - Template
.env - Global config
defaults - Workspace config
defaults --answers- CLI
--set
JSON object with scalar values:
{
"project_name": "My App",
"name_slug": "my-app",
"namespace": "app_ns",
"include_ci": false,
"author": "Me"
}Allowed value types: string, bool, integer (used internally as strings).
tempify basic_cpp my-app --write-answers resolved.json ...With --strict:
- Unknown keys in
--answers→ error - Invalid imported values → error
Without --strict, unknown keys are ignored.
tempify basic_cpp my-app --non-interactive --answers answers.jsonMissing required value → abort instead of prompt.
tempify basic_cpp --questions
tempify basic_cpp --questions --json --fullDefine questions: questions.lua Reference
Tempify · Repository · Issues · Releases
Documentation lives in this wiki. For a build quickstart, see the README in the repository.
Prebyte (template engine) is a separate project bundled by Tempify.
- CLI Reference
- Questions & Answers
- Configuration
- Render Options
- Hooks (Users)
- Reapply & Diff
- Shared Template Store
- Prebyte Passthrough
- Shell Completion