ANN: skeleton.jl, a script for creating packages quickly

To simplify creation of Julia packages, I wrote

which is a simple script that replaces placeholders in a directory of template files and copies them into a destination directory.

It is nowhere near as fancy as PkgDev.jl, lacking the fine granularity & customizations, and also the registry management functionality. But it is dead simple, less than 100 LOC, and you can easily tailor it to your own purposes, and create new templates just by editing a bunch of files in a directory. The default template embodies practices from eg Literate.jl, using projects for documentation generation and coverage.

Issues and PRs are welcome, but my intention is to cover 90%+ of the use cases, not make a very complicated and general tool.

20 Likes

Nice, I like this approach!

License.md probably don’t have to contain Copyright (c) 2018: Tamas K. Papp.?

2 Likes

Good catch, fixed.

1 Like

You almost got the copyright for all future Julia code there. Bummer someone found it.

11 Likes

Yep, the best laid schemes… :wink:

There are more fixes to come, so perhaps I should package this after all.

1 Like

I would like to thank everyone who reported bugs and made PRs. Since the initial announcement, a couple of minor things were fixed, including documentation generation, using Pkg.METADATA_compatible_uuid, various corner cases with paths, etc. So I tagged a release, and I am committing to maintaining this project (at least until a much better approach becomes available).

7 Likes