Skip to content

Rename to git-repokit-python-template and plan language-specific templates #4

@djdarcy

Description

@djdarcy

Consider renaming to git-repokit-python-template

The current template is Python-specific: pyproject.toml, __init__.py/__main__.py generation, pip install, pytest CI, PyPI publishing via trusted publisher. It's not appropriate for C/C++, Rust, Go, or other language ecosystems.

Proposal

  1. Rename git-repokit-template to git-repokit-python-template to accurately reflect its scope
  2. Create language-specific templates over time as needed:
    • git-repokit-python-template (current, renamed)
    • git-repokit-cpp-template (CMake, Conan/vcpkg, CTest)
    • git-repokit-rust-template (Cargo, crates.io publishing)
    • git-repokit-node-template (package.json, npm/yarn, Jest)
    • git-repokit-generic-template (language-agnostic base with just git hooks, LICENSE, README, .github configs)

Shared across all templates

These pieces are language-agnostic and should remain consistent:

  • git-repokit-common subtree (hooks, sync-versions)
  • .github/FUNDING.yml, CONTRIBUTING.md, LICENSE
  • Issue templates, PR templates, dependabot config
  • Private directory initialization (dz private-init)
  • GitHub repo configuration (discussions, topics, sponsorship, labels)
  • ghtraf (traffic tracker) setup

What varies per language

  • Package manifest (pyproject.toml vs Cargo.toml vs CMakeLists.txt vs package.json)
  • CI workflow (pytest vs cargo test vs ctest vs jest)
  • Release workflow (PyPI vs crates.io vs npm vs GitHub Releases with binaries)
  • Version file format and location
  • Linting/formatting tools
  • Directory structure conventions

Migration considerations

  • Renaming the repo breaks the --template URL for any docs/skills referencing git-repokit-template
  • /create-project skill references the template URL and would need updating
  • Existing repos created from the template are unaffected (template link is cosmetic after creation)
  • GitHub supports repo redirects after rename, so old URLs will still work temporarily

Approach

  • Start by renaming current repo to git-repokit-python-template
  • Update /create-project skill to accept --type python|cpp|rust|node|generic
  • Create additional templates as the need arises (don't pre-build for languages we don't use yet)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions