ANN: COPIERTemplate.jl

I am happy to announce COPIERTemplate.jl

  • A template using copier, a python package that renders project templates; and
  • A Julia package created with said template, wrapping the copier Python package.

I chose copier because it can be applied to existing projects and it can be reapplied if the template is updated. I plan to use it to help maintain JSO packages, and every once in a while there is a small update to a workflow or config file that I want to propagate - and I got tired of writing mass github calls.

To that end, I also included a workflow in the template that automatically checks for update once a week.

The template is opinionated, with the most apparent addition being a pre-commit configuration.
There are many rough edges, so I hope other people find it useful so we can work on it together.

Please let me know if you like the idea or not. Constructive feedback and/or stars are appreciated.


To use the template, you can install the package and run

COPIERTemplate.generate("PkgName.jl")

or install the Python package and run

copier copy https://github.com/abelsiqueira/COPIERTemplate.jl PkgName.jl

Here is an asciinema: COPIERTemplate.jl - asciinema

The Julia version will automatically generate a UUID, but it comes with the cost of installing Python through PythonCall.