### Python template
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# Distribution / packaging
.Python
env/
.idea
db.sqlite3
.idea
wheelhouse/

.installed.cfg


# PyInstaller
#  Usually these files are written by a python script from a template
#  before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt


# Django stuff:
*.log

# Sphinx documentation
docs/_build/

# PyBuilder
target/

#MacOS files
.DS_Store

#Bower
static/bower_components

#migrations
projecthandler/migrations/
sf_user/migrations/
instancehandler/migrations
sdnctrlhandler/migrations
authosm/migrations