You’ve written a directory full of Python scripts on your laptop and now you want to deploy them elsewhere and share them with other developers. Turning them into a proper package at this stage can be a nightmare. In hindsight, beginning your work within the framework of a package would have been better! Introducing Mapbox Pyskel, a skeleton Python package repo that you can clone and make your own. A test suite and command line interface are included.
Pyskel emerged out of our internal experience in building Python tools. Our designers and developers utilize an array of python modules – Rasterio, Fiona, and Shapely to name a few – and needed a better way to build and share these tools. Recently, we’ve been building tools that enable vectorization of raster weather data into formats optimized for styling in Mapbox Studio, and we are using the Mapbox Pyskel framework to create a shareable package.
Pyskel aims to embody wisdoms written down in various sources, including:
I’ve been a long time user of paster create
from Paste Script, but a skeleton repo is a better fit for the programming teams I work with these days. You will find other skeletons (some named “pyskel”) on GitHub, but I’ve made a few different choices for Mapbox Pyskel that you may appreciate. A Pyskel-based package entails the installation of Click for command line interface development and Pytest for testing. Each of these reduce development friction and make Mapbox Pyskel a good choice for a developer looking to increase their productivity.
Mapbox Pyskel is open source. Give it a try and let us know if there are features you’d like to see!