Instructor Notes
This lesson is a process-oriented tutorial on creating a Python package for Research Software Engineers.
After giving an overview of all the files we’re going to touch (on the index page), it follows the process of creating a package:
- Create a new repository (setup),
- Create a virtual environment,
- Add some code and tests,
- Add important metadata files,
- Configure the
pyproject.toml
file with detailed metadata, - Decide on and implement a versioning scheme,
- Add automated checks like code linting,
- Add continuous integration support,
- Publish the package and make it citeable by adding an additional metadata file.
The lesson is intentionally more challenging than an entry-level how-to guide on packaging. At each step when a new concept is introduced, it dives deeper into the detail than a how-to guide would – for instance, we only get to code after setting up an environment and initializing the infrastructure needed for reproducible builds.