Python Package Skeleton Template¶
This is a project skeleton template for a Python project/library. The repository intents to implement and explain the latest best practices in team software development, continuous integration and deployment. The repository simulates the implementation of a sampleproject
.
You will find in the project’s documentation all references that motivated the current configuration as well as detailed explanation on the different configuration files.
I intent to keep this repository up to date to my knowledge and needs. Your feedback and suggestions are highly appreciated, please raise an issue and share your thoughts.
Motivation¶
Understand and implement in the best practices in software development and deployment for scientific software; actually I think the strategy reviewed here can be applied at many other development contexts.
This repository does NOT intent to be a cookiecutter-like repository. Thought there are many and very well documented cookiecutter templates out there, even for scientific software, I felt that directly using a cookiecutter would lead me nowhere because I would miss the whole understanding of what the cookiecutter is automatizing in the first place. Therefore, building a repository from scratch was the only and best approach to achieve a minimum understanding of best practices and protocols.
Acknowledgments¶
The whole repository structure and CI layout has strongly influenced by the discussions provided by ionel in his blog post about Packaging a python library. I really recommend reading through that post and the other related posts in his blog. Hence, python-nameless and cookiecutter-pylibrary are two repositories that served as main source of information for the python-project-skeleton repository; other sources of information were also important and those are referenced within context.
Version¶
v0.2.1