text: # -*- coding: utf-8 -*-
  """
  Django settings for {{ project_name }} project.
  
  For more information on this file, see
  https://docs.djangoproject.com/en/dev/topics/settings/
  
  For the full list of settings and their values, see
  https://docs.djangoproject.com/en/dev/ref/settings/
  """
  from __future__ import absolute_import, unicode_literals
  import sys
  
  import environ
  
  ROOT_DIR = environ.Path(__file__) - 3  # (/a/b/myfile.py - 3 = /)
  
  env = environ.Env()
  
  # APP CONFIGURATION
  # ------------------------------------------------------------------------------
  DJANGO_APPS = (
      # Default Django apps:
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.sites',
      'django.contrib.messages',
      'django.contrib.staticfiles',
  
      # Useful template tags:
      # 'django.contrib.humanize',
  
      # Admin
      'django.contrib.admin',
  )
  THIRD_PARTY_APPS = (
  )
  
  # Apps specific for this project go here.
  LOCAL_APPS = (
      '{{ project_name }}.users',  # custom users app
      # Your stuff: custom apps go here
  )
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#installed-apps
  INSTALLED_APPS = DJANGO_APPS + THIRD_PARTY_APPS + LOCAL_APPS
  
  # MIDDLEWARE CONFIGURATION
  # ------------------------------------------------------------------------------
  MIDDLEWARE_CLASSES = (
      # Make sure djangosecure.middleware.SecurityMiddleware is listed first
      'django.contrib.sessions.middleware.SessionMiddleware',
      'django.middleware.common.CommonMiddleware',
      'django.middleware.csrf.CsrfViewMiddleware',
      'django.contrib.auth.middleware.AuthenticationMiddleware',
      'django.contrib.messages.middleware.MessageMiddleware',
      'django.middleware.clickjacking.XFrameOptionsMiddleware',
  )
  
  # MIGRATIONS CONFIGURATION
  # ------------------------------------------------------------------------------
  MIGRATION_MODULES = {
      'sites': '{{ project_name }}.contrib.sites.migrations'
  }
  
  # DEBUG
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#debug
  DEBUG = env.bool("DJANGO_DEBUG", False)
  
  # FIXTURE CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-FIXTURE_DIRS
  FIXTURE_DIRS = (
      str(ROOT_DIR.path('fixtures')),
  )
  
  # EMAIL CONFIGURATION
  # ------------------------------------------------------------------------------
  EMAIL_BACKEND = env('DJANGO_EMAIL_BACKEND', default='django.core.mail.backends.smtp.EmailBackend')
  
  # MANAGER CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#admins
  ADMINS = (
      ("""Julio Menendez""", 'admin@example.com'),
  )
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#managers
  MANAGERS = ADMINS
  
  # DATABASE CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#databases
  DATABASES = {
      # Raises ImproperlyConfigured exception if DATABASE_URL not in os.environ
      'default': env.db("DATABASE_URL", default="postgres:///{{ project_name }}"),
  }
  DATABASES['default']['ATOMIC_REQUESTS'] = True
  
  
  # GENERAL CONFIGURATION
  # ------------------------------------------------------------------------------
  # Local time zone for this installation. Choices can be found here:
  # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
  # although not all choices may be available on all operating systems.
  # In a Windows environment this must be set to your system time zone.
  TIME_ZONE = 'UTC'
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#language-code
  LANGUAGE_CODE = 'en-us'
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#site-id
  SITE_ID = 1
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#use-i18n
  USE_I18N = True
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#use-l10n
  USE_L10N = True
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#use-tz
  USE_TZ = True
  
  # TEMPLATE CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#templates
  TEMPLATES = [
      {
          # See: https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-TEMPLATES-BACKEND
          'BACKEND': 'django.template.backends.django.DjangoTemplates',
          # See: https://docs.djangoproject.com/en/dev/ref/settings/#template-dirs
          'DIRS': [
              str(ROOT_DIR.path('templates')),
          ],
          'OPTIONS': {
              # See: https://docs.djangoproject.com/en/dev/ref/settings/#template-debug
              'debug': DEBUG,
              # See: https://docs.djangoproject.com/en/dev/ref/settings/#template-loaders
              # https://docs.djangoproject.com/en/dev/ref/templates/api/#loader-types
              'loaders': [
                  'django.template.loaders.filesystem.Loader',
                  'django.template.loaders.app_directories.Loader',
              ],
              # See: https://docs.djangoproject.com/en/dev/ref/settings/#template-context-processors
              'context_processors': [
                  'django.template.context_processors.debug',
                  'django.template.context_processors.request',
                  'django.contrib.auth.context_processors.auth',
                  'django.template.context_processors.i18n',
                  'django.template.context_processors.media',
                  'django.template.context_processors.static',
                  'django.template.context_processors.tz',
                  'django.contrib.messages.context_processors.messages',
                  # Your stuff: custom template context processors go here
              ],
          },
      },
  ]
  
  # STATIC FILE CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#static-root
  STATIC_ROOT = str(ROOT_DIR('staticfiles'))
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#static-url
  STATIC_URL = '/static/'
  
  # See: https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#std:setting-STATICFILES_DIRS
  STATICFILES_DIRS = (
      str(ROOT_DIR.path('static', 'dist')),
  )
  
  # See: https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#staticfiles-finders
  STATICFILES_FINDERS = (
      'django.contrib.staticfiles.finders.FileSystemFinder',
      'django.contrib.staticfiles.finders.AppDirectoriesFinder',
  )
  
  # MEDIA CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#media-root
  MEDIA_ROOT = str(ROOT_DIR('media'))
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#media-url
  MEDIA_URL = '/media/'
  
  # URL Configuration
  # ------------------------------------------------------------------------------
  ROOT_URLCONF = '{{ project_name }}.config.urls'
  
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#wsgi-application
  WSGI_APPLICATION = '{{ project_name }}.config.wsgi.application'
  
  # AUTHENTICATION CONFIGURATION
  # ------------------------------------------------------------------------------
  AUTHENTICATION_BACKENDS = (
      'django.contrib.auth.backends.ModelBackend',
  )
  
  # Custom user app defaults
  # Select the correct user model
  AUTH_USER_MODEL = 'users.User'
  
  
  # LOGGING CONFIGURATION
  # ------------------------------------------------------------------------------
  # See: https://docs.djangoproject.com/en/dev/ref/settings/#logging
  # A sample logging configuration. The only tangible logging
  # performed by this configuration is to send an email to
  # the site admins on every HTTP 500 error when DEBUG=False.
  # See http://docs.djangoproject.com/en/dev/topics/logging for
  # more details on how to customize your logging configuration.
  LOGGING = {
      'version': 1,
      'disable_existing_loggers': False,
      'filters': {
          'require_debug_false': {
              '()': 'django.utils.log.RequireDebugFalse'
          }
      },
      'formatters': {
          'verbose': {
              'format': '%(levelname)s %(asctime)s %(module)s '
                        '%(process)d %(thread)d %(message)s'
          },
      },
      'handlers': {
          'mail_admins': {
              'level': 'ERROR',
              'filters': ['require_debug_false'],
              'class': 'django.utils.log.AdminEmailHandler'
          },
          'console': {
              'level': 'DEBUG',
              'class': 'logging.StreamHandler',
              'formatter': 'verbose',
          },
      },
      'loggers': {
          'django.request': {
              'handlers': ['mail_admins'],
              'level': 'ERROR',
              'propagate': True
          },
          'django.security.DisallowedHost': {
              'level': 'ERROR',
              'handlers': ['console', 'mail_admins'],
              'propagate': True
          }
      }
  }
  
  
  # Location of root django.contrib.admin URL
  ADMIN_URL = r'^admin/'
  
  # Your common stuff: Below this line define 3rd party library settings
  