Scientific software standards
Most research code is written once and never reused because it is hard to install, untested, and undocumented. scikit-package, developed with Prof. Simon Billinge, gives scientists a path from a script to a tested, documented, public package, one level at a time.
Packaging standards, project templates, automated reusable workflows, and tutorials
Five levels of sharing, from a reusable function to a released pip/conda package
Documentation · Code · Paper
Five levels of sharing code, from reusing a function within a file (level 1) to releasing a public package with pip/conda distribution, release notes, and hosted documentation (level 5), with the scikit-package command for each level.
Academic software built with scikit-package
PDFfit2 and PDFgui: Computer programs for studying nanostructure in crystals (J. Phys. Condens. Matter)
cifkit: A Python package for coordination geometry and atomic site analysis (JOSS)
Composition and structure analyzer/featurizer for explainable machine learning models to predict solid state structures (Digital Discovery)
Stretched non-negative matrix factorization (npj Comput. Mater.)
Real-space texture and pole-figure analysis using the 3D pair distribution function on a platinum thin film (IUCrJ)