diff --git a/docs/intro/reusable-apps.txt b/docs/intro/reusable-apps.txt
index ea3bd64584f6..8c1bf7827ce0 100644
--- a/docs/intro/reusable-apps.txt
+++ b/docs/intro/reusable-apps.txt
@@ -183,12 +183,20 @@ this. For a small app like polls, this process isn't too difficult.
license. Just be aware that your licensing choice will affect who is able
to use your code.
-#. Next we'll create ``setup.cfg`` and ``setup.py`` files which detail how to
- build and install the app. A full explanation of these files is beyond the
- scope of this tutorial, but the `setuptools documentation
- `_ has a good explanation.
- Create the files ``django-polls/setup.cfg`` and ``django-polls/setup.py``
- with the following contents:
+#. Next we'll create ``pyproject.toml``, ``setup.cfg``, and ``setup.py`` files
+ which detail how to build and install the app. A full explanation of these
+ files is beyond the scope of this tutorial, but the `setuptools
+ documentation `_ has a good
+ explanation. Create the ``django-polls/pyproject.toml``,
+ ``django-polls/setup.cfg``, and ``django-polls/setup.py`` files with the
+ following contents:
+
+ .. code-block:: toml
+ :caption: django-polls/pyproject.toml
+
+ [build-system]
+ requires = ['setuptools>=40.8.0', 'wheel']
+ build-backend = 'setuptools.build_meta:__legacy__'
.. code-block:: ini
:caption: django-polls/setup.cfg