Skip to content

Creating skeleton for python project

Ideally you want to structure you python repository to look something like this. Let me explain role of each folders and files.

docs/
<package_name>/
tests/
CHANGELOG.md
.gitignore
README.md
LICENSE.txt
setup.py
Dockerfile
.dockerignore

docs

A general rule of thumb is to include all the documentation inside docs folder. You need to have four types of documentation for your repository.

  • Tutorials: A set of tutorials for new users to use your code. This should be easy to understand and should self contained so user can follow.
  • How to Guides: Set of instructions for advanced user to use complicated utilities in your repo.
  • References: Code documentation which can be autogenerated from your docstrings in the code.
  • Explanation: Theoritical and/or philosophical explanation regarding design choices and assumptions made in your repo.
  • Guide to developers" Set of instructions for contributors.

... under development