Skip to content

copier-python development workflow

Cloning the repository

git clone https://github.com/smkent/copier-python
cd copier-python

Run mise install in new repository clones to install tools, dependencies, and git hooks:

mise install

Local template usage

While making development changes to copier-python, the local template can be used to create projects. To do so, run copier copy with the -r/--vcs-ref argument:

copier copy -r HEAD path/to/copier-python/clone/ path/to/new/project/

This will render the new project from the current template state including uncommitted changes.

Development tools

  • mise run lint: Run formatters and static checks
  • mise run test: Run tests

The lint and test tasks can also be run as a single combined command with:

mise run lt

Test snapshots

Many copier-python tests compare template-rendered files with saved snapshots. When templates are modified, the snapshots need to be updated. Update test snapshots by running:

mise run snapup

Documentation server

Start the development server with:

mise run docs

The documentation site will be served at:

http://localhost:8000

To use a different bind host/port, run mise run docs --help for usage info.