Skip to content

Package Your Code Workshop

Welcome to the Package Your Code workshop! This workshop is designed to teach NHS data scientists and analysts how to package their code effectively for better collaboration, distribution, and reuse. In this workshop, you'll master the essential skills for creating professional, reusable Python packages. You'll learn how to manage dependencies, package your code using modern standards, and create comprehensive documentation.

Pre-requisite Knowledge

The workshop assumes that participants have a basic understanding of the following concepts:

Pre-requisite Description
Python Knowledge of how to write and run Python code
Git Basic command line usage and version control concepts
GitHub Familiarity with repositories, Codespaces, and forking
RAP Understanding of the core principles of Reproducible Analytical Pipelines (RAP), particularly the levels of RAP
Virtual Environments & Package Management Basic understanding of virtual environments and package management in Python (e.g., pip and venv)

Core Workshop Topics

  • Dependency Management

    • Using uv for fast, reliable dependency management
    • Organizing dependencies into production, development, and documentation categories
    • Creating and managing virtual environments
  • Packaging with pyproject.toml

    • Understanding the modern Python packaging standard
    • Configuring project metadata and dependencies
    • Making your code installable and reusable
  • Documentation with MkDocs

    • Setting up professional documentation with MkDocs Material
    • Using mkdocstrings for automatic API documentation
    • Creating user-friendly guides and tutorials

Bonus Content

Work in Progress

The bonus workshop are still a work in progress and have not been completed in time for the live delivery of the workshop.

Explore these additional topics at your own pace:

Getting Started

Ready to begin? Check out our Getting Started guide to set up your development environment and begin the workshop.