Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleChapter Descriptions
  1. Origin

    Opening notes, a description of the included examples, acknowledgements, changelog.

  2. Documentation

    Tools to get you to the right documentation, quicker. Covers DevDocs, DuckDuckGo, Bonus Django Documentation Sites, Wget, and some miscellaneous tips.

  3. Virtual Environments and Dependencies

    Manage environments, and the dependencies within, correctly and easily. Covers venv, virtualenv, pip-tools, pip-lock, recommended practices for dependency management, and Python’s development mode.

  4. Python Shell

    Enhance your Python command line experience. Covers IPython and django-read-only.

  5. Development Server

    Make Django’s runserver better. Covers django-debug-toolbar, Watchman, django-browser-reload, and Rich.

  6. Code Quality Tools

    The key tools to improve your code quality. Covers EditorConfig, pre-commit, Black, isort, and Flake8.

  7. Further Code Quality Tools

    Many extra tools useful for Django development. Covers pyupgrade, django-upgrade, pre-commit-hooks, reorder_python_imports, curlylint, DjHTML, Mypy (barely!), Prettier, ESLint, and Shellcheck.

  8. Build Your Own Tools

    How to make your own code quality tools. Covers pre-commit’s virtual languages, how to write and test a Flake8 plugin, and how to write a pre-commit-compatible command line tool.

  9. Settings

    Tips and patterns for managing Django’s settings file. Covers structuring your settings, a template, some patterns to avoid, and testing settings files.

  10. Models and Migrations

    Tips and tools for managing your data. Covers writing a management command to seed your development database, generating data with Factory Boy, migration safeguard practices, and django-linear-migrations.

  11. System Checks

    Make the most of Django’s built-in runtime code quality framework. Covers how system checks work, how to write and test your own checks, and django-version-checks.

  12. Terminus

    Closing notes with links to further reading, including many things that didn't make it into the book.

Schedule

  • TBD