# install dependencies
pip install Django pylint pylint-django
# create new project
django-admin startproject '<PROJECT_NAME>'
# add sub-app to project
python manage.py startapp '<APP_NAME>'
# start server
python manage.py runserver
# create migration
python manage.py makemigrations
# migrate db
python manage.py migrate
# create superuser for admin panel
python manage.py createsuperuser
# collect static files into one folder
python manage.py collectstatic
# restart a gunicorn service
sudo systemctl restart gunicorn
# generate distribution files (from within project's root folder)
python -m build # requires build package - pip install build
# upload generated distribution files to pypi
twine upload '<DIST_FOLDER_WITH_GENERATED_PACKAGES>'/*
# Create an editable install that works with vscode/pylance
pip install -e '<PATH_TO_PKG_DIR>' --config-settings editable_mode=compat