This project was initially forked from PySpark-Boilerplate because it has worked well for me in the past and I wanted to create a base template that could be used to easily get up and running with a new PySpark project.
There is a corresponding article explaining why these practices were chosen.
Install the latest Cookiecutter if you haven't installed it yet (this requires Cookiecutter 1.4.0 or higher):
pip install -U cookiecutter
Create a project from this template:
cookiecutter https://github.com/dbk138/pyspark-cookiecutter.git