Status & roadmap

What works in Terox today, and what is on the way.

Terox is young. This page is the honest current state.

What works today

  • Scaffolding from a local directory.
  • Scaffolding from a public GitHub repository (downloaded as a zipball and cached locally).
  • Manifest-driven variable prompting via terox.json.
  • Interactive prompts (text inputs, single-choice selects, yes/no confirmations).
  • Variable substitution in both file paths and file contents using Go text/template.
  • Binary-safe copying — files detected as binary are passed through byte-for-byte, never rendered.
  • Non-interactive mode for CI (--set key=value plus --non-interactive), with a non-zero exit code when a required variable is missing.
  • terox create writes a real starter template with an example manifest, variables and a {{.project_name}}/ directory you can edit.

Known limitations

  • Public GitHub repositories only. Private repositories and GitHub Enterprise are not supported yet.
  • Files that natively contain {{ }} syntax (Vue interpolations, GitHub Actions ${{ ... }}, Helm charts) must be hand-escaped inside the template. A future release will add a "copy without rendering" path list.
  • No template updates. Once a project has been scaffolded, it has no ongoing link to its template.
  • No pre- or post-generation hooks.

On the roadmap

In rough priority order:

  1. Authenticated downloads for private GitHub repositories (via GITHUB_TOKEN).
  2. A .teroxignore-style mechanism for copying files without rendering them.
  3. Pre- and post-generation hooks.
  4. Choice validation in non-interactive mode.
  5. Generic git URL support (GitLab, self-hosted, SSH).

Contributing

Bug reports, feature requests and patches are welcome on GitHub. Small PRs that fix a single clearly-scoped thing tend to land fastest.