Dưới đây là project mẫu cho thấy cách rất tốt cấu trúc project: https://github.com/kennethreitz/samplemod. Project tạo module "sample". Cấu trúc thư mục:
README.rst LICENSE setup.py requirements.txt sample/__init__.py sample/core.py sample/helpers.py docs/conf.py docs/index.rst tests/test_basic.py tests/test_advanced.py
README.rst: File mô tả ngắn module, cách setup, cách dùng, v.v.
LICENSE: Chứa văn bản license và claim copyright.
setup.py: Câu trả lời của Python cho multi-platform installer và make file. Nếu quen cài command-line, make && make install dịch thành python setup.py build && python setup.py install. Dùng để build project trên máy user.
requirements.txt: File requirement Pip chỉ định dependency để contribute: testing, building, generate docs. Nếu project không có dev dependency, hoặc thích setup qua setup.py, file này không cần.
docs/: Thư mục chứa documentation cho project.
tests/: Tất cả test nên ở đây. Ban đầu một file test. Khi lớn, cấu trúc test như module directory.
sample/: Thư mục chứa code module thực tế. Nếu module chỉ 1 file, đặt trực tiếp ở root repo làm sample.py. Thư viện không nên ở src hoặc python subdirectory mơ hồ. Chứa __init__.py nếu muốn module nằm trong package.