Checklist of stuff to do, or at the very least, stuff to consider when creating a new Django project. This is not a step-by-step guide, and assumes you know what all these things are.

  • Enable Admin
  • Set up local_settings.py
  • Specific settings to consider
    • Set TEMPLATE_DEBUG
    • INTERNAL_IPS
    • Caching and Cache Control
      • Set up Memcached
      • CACHE_BACKEND
      • USE_ETAGS
    • Date/Time/Language/Localization settings
      • FIRST_DAY_OF_WEEK
      • LANGUAGES
    • Error Handling
      • Use default email handler for errors?
      • SEND_BROKEN_LINK_EMAILS
    • Email settings
      • DEFAULT_FROM_EMAIL
      • SERVER_EMAIL
      • EMAIL_BACKEND
      • EMAIL_HOST
      • EMAIL_HOST_PASSWORD
      • EMAIL_HOST_USER
      • EMAIL_USE_TLS
    • Session/Cookie Stuff
      • SESSION_ENGINE
      • SESSION_COOKIE_AGE
      • SESSION_COOKIE_DOMAIN
      • SESSION_COOKIE_NAME
      • SESSION_COOKIE_PATH
      • SESSION_COOKIE_SECURE
      • SESSION_EXPIRE_AT_BROWSER_CLOSE
  • Consider setting up "goodies"
  • Don't forget to set up your own app/core functionality!
    • Set up your templates
    • Remember that breadcrumbing can be done from within your templates
    • Remember to use generic views where possible!
  • Progressive enhancement
    • Make your views work with ajax too
    • Add <JS Framework> plugins where logical/helpful
    • Don't break your non-js views
    • ajax-validation
  • Consider setting up other "goodies"
  • Customize admin templates
  • Enable admindocs, ensure your project's docs makes sense
  • Set up cron jobs
    • Session clearing cron
    • Backup cron