Origin Opening notes, a description of the included examples, acknowledgements, changelog. Documentation Tools to get you to the right documentation, quicker. Covers DevDocs, DuckDuckGo, Bonus Django Documentation Sites, Wget, and some miscellaneous tips. 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. Python Shell Enhance your Python command line experience. Covers IPython and django-read-only. Development Server Make Django’s runserver better. Covers django-debug-toolbar, Watchman, django-browser-reload, and Rich. Code Quality Tools The key tools to improve your code quality. Covers EditorConfig, pre-commit, Black, isort, and Flake8. 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. 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. Settings Tips and patterns for managing Django’s settings file. Covers structuring your settings, a template, some patterns to avoid, and testing settings files. 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. 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. Terminus Closing notes with links to further reading, including many things that didn't make it into the book.
|