diff --git a/BUILD.gn b/BUILD.gn
index 2ea1172..c72a386 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -118,12 +118,15 @@
     # Python packages
     "$dir_pw_allocator/py",
     "$dir_pw_arduino_build/py",
+    "$dir_pw_bloat/py",
     "$dir_pw_build/py",
     "$dir_pw_cli/py",
+    "$dir_pw_docgen/py",
     "$dir_pw_doctor/py",
     "$dir_pw_env_setup/py",
     "$dir_pw_hdlc_lite/py",
     "$dir_pw_module/py",
+    "$dir_pw_package/py",
     "$dir_pw_presubmit/py",
     "$dir_pw_protobuf_compiler/py",
     "$dir_pw_protobuf/py",
@@ -137,20 +140,24 @@
 
     # Standalone scripts
     "$dir_pw_hdlc_lite/rpc_example:example_script",
-
-    # TODO(pwbug/239): Structure pw_docgen as Python packages.
-    # "$dir_pw_bloat/py",
-    # "$dir_pw_docgen/py",
   ]
 
-  _toolchain = "$_default_toolchain_prefix$pw_default_optimization_level"
+  _py_toolchain = "$_default_toolchain_prefix$pw_default_optimization_level"
 
   python_deps = []
   foreach(dep, _python_gn_targets) {
-    python_deps += [ "$dep($_toolchain)" ]
+    python_deps += [ "$dep($_py_toolchain)" ]
   }
 }
 
+# Python packages for supporting specific targets.
+pw_python_group("target_support_packages") {
+  python_deps = [
+    "$dir_pigweed/targets/lm3s6965evb-qemu/py($dir_pigweed/targets/lm3s6965evb-qemu:lm3s6965evb_qemu_$pw_default_optimization_level)",
+    "$dir_pigweed/targets/stm32f429i-disc1/py($dir_pigweed/targets/stm32f429i-disc1:stm32f429i_disc1_$pw_default_optimization_level)",
+  ]
+}
+
 # By default, Pigweed will build this target when invoking ninja.
 group("pigweed_default") {
   deps = []
@@ -164,6 +171,8 @@
         ":apps",
         ":python.lint",
         ":python.tests",
+        ":target_support_packages.lint",
+        ":target_support_packages.tests",
       ]
       if (pw_unit_test_AUTOMATIC_RUNNER == "") {
         # Without a test runner defined, build the tests but don't run them.
diff --git a/pw_bloat/bloat.gni b/pw_bloat/bloat.gni
index 7302bae..9acfd05 100644
--- a/pw_bloat/bloat.gni
+++ b/pw_bloat/bloat.gni
@@ -160,7 +160,7 @@
         metadata = {
           pw_doc_sources = rebase_path([ _doc_rst_output ], root_build_dir)
         }
-        script = "$dir_pw_bloat/py/no_bloaty.py"
+        script = "$dir_pw_bloat/py/pw_bloat/no_bloaty.py"
         args = [ rebase_path(_doc_rst_output) ]
         outputs = [ _doc_rst_output ]
       }
@@ -175,16 +175,13 @@
         metadata = {
           pw_doc_sources = rebase_path([ _doc_rst_output ], root_build_dir)
         }
-        script = "$dir_pw_bloat/py/bloat.py"
-        inputs = [
-                   "$dir_pw_bloat/py/binary_diff.py",
-                   "$dir_pw_bloat/py/bloat_output.py",
-                 ] + _bloaty_configs
+        script = "$dir_pw_bloat/py/pw_bloat/bloat.py"
+        inputs = _bloaty_configs
         outputs = [
           "$target_gen_dir/${target_name}.txt",
           _doc_rst_output,
         ]
-        deps = _all_target_dependencies
+        deps = _all_target_dependencies + [ "$dir_pw_bloat/py" ]
         args = _bloat_script_args + _binary_paths
 
         # Print size reports to stdout when they are generated.
@@ -323,7 +320,7 @@
       metadata = {
         pw_doc_sources = rebase_path([ _doc_rst_output ], root_build_dir)
       }
-      script = "$dir_pw_bloat/py/no_toolchains.py"
+      script = "$dir_pw_bloat/py/pw_bloat/no_toolchains.py"
       args = [ rebase_path(_doc_rst_output) ]
       outputs = [ _doc_rst_output ]
     }
diff --git a/pw_bloat/py/BUILD.gn b/pw_bloat/py/BUILD.gn
new file mode 100644
index 0000000..74f574f
--- /dev/null
+++ b/pw_bloat/py/BUILD.gn
@@ -0,0 +1,29 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pw_build/python.gni")
+
+pw_python_package("py") {
+  setup = [ "setup.py" ]
+  sources = [
+    "pw_bloat/__init__.py",
+    "pw_bloat/binary_diff.py",
+    "pw_bloat/bloat.py",
+    "pw_bloat/bloat_output.py",
+    "pw_bloat/no_bloaty.py",
+    "pw_bloat/no_toolchains.py",
+  ]
+}
diff --git a/pw_bloat/py/pw_bloat/__init__.py b/pw_bloat/py/pw_bloat/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/pw_bloat/py/pw_bloat/__init__.py
diff --git a/pw_bloat/py/binary_diff.py b/pw_bloat/py/pw_bloat/binary_diff.py
similarity index 100%
rename from pw_bloat/py/binary_diff.py
rename to pw_bloat/py/pw_bloat/binary_diff.py
diff --git a/pw_bloat/py/bloat.py b/pw_bloat/py/pw_bloat/bloat.py
similarity index 98%
rename from pw_bloat/py/bloat.py
rename to pw_bloat/py/pw_bloat/bloat.py
index 8302fcf..c3e145b 100755
--- a/pw_bloat/py/bloat.py
+++ b/pw_bloat/py/pw_bloat/bloat.py
@@ -23,8 +23,8 @@
 
 from typing import List, Iterable, Optional
 
-from binary_diff import BinaryDiff
-import bloat_output
+from pw_bloat.binary_diff import BinaryDiff
+from pw_bloat import bloat_output
 
 import pw_cli.log
 
diff --git a/pw_bloat/py/bloat_output.py b/pw_bloat/py/pw_bloat/bloat_output.py
similarity index 97%
rename from pw_bloat/py/bloat_output.py
rename to pw_bloat/py/pw_bloat/bloat_output.py
index 569cb1f..d203717 100644
--- a/pw_bloat/py/bloat_output.py
+++ b/pw_bloat/py/pw_bloat/bloat_output.py
@@ -15,10 +15,10 @@
 
 import abc
 import enum
-from typing import Callable, Collection, Dict, List, Optional, Tuple, Type
-from typing import Union
+from typing import (Callable, Collection, Dict, List, Optional, Tuple, Type,
+                    Union)
 
-from binary_diff import BinaryDiff, FormattedDiff
+from pw_bloat.binary_diff import BinaryDiff, FormattedDiff
 
 
 class Output(abc.ABC):
diff --git a/pw_bloat/py/no_bloaty.py b/pw_bloat/py/pw_bloat/no_bloaty.py
similarity index 100%
rename from pw_bloat/py/no_bloaty.py
rename to pw_bloat/py/pw_bloat/no_bloaty.py
diff --git a/pw_bloat/py/no_toolchains.py b/pw_bloat/py/pw_bloat/no_toolchains.py
similarity index 100%
rename from pw_bloat/py/no_toolchains.py
rename to pw_bloat/py/pw_bloat/no_toolchains.py
diff --git a/pw_docgen/docs.gni b/pw_docgen/docs.gni
index 2dda55c..a6354bb 100644
--- a/pw_docgen/docs.gni
+++ b/pw_docgen/docs.gni
@@ -108,7 +108,7 @@
 
   if (pw_docgen_BUILD_DOCS) {
     pw_python_action(target_name) {
-      script = "$dir_pw_docgen/py/docgen.py"
+      script = "$dir_pw_docgen/py/pw_docgen/docgen.py"
       args = _script_args
       deps = [ ":$_metadata_file_target" ]
       inputs = [ invoker.conf ]
diff --git a/pw_docgen/py/BUILD.gn b/pw_docgen/py/BUILD.gn
new file mode 100644
index 0000000..28d4734
--- /dev/null
+++ b/pw_docgen/py/BUILD.gn
@@ -0,0 +1,25 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pw_build/python.gni")
+
+pw_python_package("py") {
+  setup = [ "setup.py" ]
+  sources = [
+    "pw_docgen/__init__.py",
+    "pw_docgen/docgen.py",
+  ]
+}
diff --git a/pw_docgen/py/pw_docgen/__init__.py b/pw_docgen/py/pw_docgen/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/pw_docgen/py/pw_docgen/__init__.py
diff --git a/pw_docgen/py/docgen.py b/pw_docgen/py/pw_docgen/docgen.py
similarity index 100%
rename from pw_docgen/py/docgen.py
rename to pw_docgen/py/pw_docgen/docgen.py
diff --git a/pw_docgen/py/pw_docgen/py.typed b/pw_docgen/py/pw_docgen/py.typed
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/pw_docgen/py/pw_docgen/py.typed
diff --git a/pw_docgen/py/setup.py b/pw_docgen/py/setup.py
new file mode 100644
index 0000000..6953c15
--- /dev/null
+++ b/pw_docgen/py/setup.py
@@ -0,0 +1,27 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+"""pw_docgen"""
+
+import setuptools  # type: ignore
+
+setuptools.setup(
+    name='pw_docgen',
+    version='0.0.1',
+    author='Pigweed Authors',
+    author_email='pigweed-developers@googlegroups.com',
+    description='Generate Sphinx documentation',
+    packages=setuptools.find_packages(),
+    package_data={'pw_docgen': ['py.typed']},
+    zip_safe=False,
+)
diff --git a/pw_package/py/BUILD.gn b/pw_package/py/BUILD.gn
new file mode 100644
index 0000000..6388bc0
--- /dev/null
+++ b/pw_package/py/BUILD.gn
@@ -0,0 +1,29 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pw_build/python.gni")
+
+pw_python_package("py") {
+  setup = [ "setup.py" ]
+  sources = [
+    "pw_package/__init__.py",
+    "pw_package/git_repo.py",
+    "pw_package/package_manager.py",
+    "pw_package/packages/__init__.py",
+    "pw_package/packages/nanopb.py",
+    "pw_package/pigweed_packages.py",
+  ]
+}
diff --git a/pw_package/py/pw_package/__init__.py b/pw_package/py/pw_package/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/pw_package/py/pw_package/__init__.py
diff --git a/pw_package/py/setup.py b/pw_package/py/setup.py
index 682e013..eb574be 100644
--- a/pw_package/py/setup.py
+++ b/pw_package/py/setup.py
@@ -13,7 +13,7 @@
 # the License.
 """The pw_package package."""
 
-import setuptools
+import setuptools  # type: ignore
 
 setuptools.setup(
     name='pw_package',
@@ -21,6 +21,8 @@
     author='Pigweed Authors',
     author_email='pigweed-developers@googlegroups.com',
     description='Tools for installing optional packages',
-    install_requires=[],
     packages=setuptools.find_packages(),
+    package_data={'pw_package': ['py.typed']},
+    zip_safe=False,
+    install_requires=[],
 )
diff --git a/targets/lm3s6965evb-qemu/py/BUILD.gn b/targets/lm3s6965evb-qemu/py/BUILD.gn
new file mode 100644
index 0000000..8962902
--- /dev/null
+++ b/targets/lm3s6965evb-qemu/py/BUILD.gn
@@ -0,0 +1,25 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pw_build/python.gni")
+
+pw_python_package("py") {
+  setup = [ "setup.py" ]
+  sources = [
+    "lm3s6965evb_qemu_utils/__init__.py",
+    "lm3s6965evb_qemu_utils/unit_test_runner.py",
+  ]
+}
diff --git a/targets/stm32f429i-disc1/py/BUILD.gn b/targets/stm32f429i-disc1/py/BUILD.gn
new file mode 100644
index 0000000..b93104b
--- /dev/null
+++ b/targets/stm32f429i-disc1/py/BUILD.gn
@@ -0,0 +1,28 @@
+# Copyright 2020 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pw_build/python.gni")
+
+pw_python_package("py") {
+  setup = [ "setup.py" ]
+  sources = [
+    "stm32f429i_disc1_utils/__init__.py",
+    "stm32f429i_disc1_utils/stm32f429i_detector.py",
+    "stm32f429i_disc1_utils/unit_test_client.py",
+    "stm32f429i_disc1_utils/unit_test_runner.py",
+    "stm32f429i_disc1_utils/unit_test_server.py",
+  ]
+}
diff --git a/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/stm32f429i_detector.py b/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/stm32f429i_detector.py
index 56b98de..8b7a0e4 100644
--- a/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/stm32f429i_detector.py
+++ b/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/stm32f429i_detector.py
@@ -17,8 +17,8 @@
 import logging
 import typing
 
-import coloredlogs
-import serial.tools.list_ports
+import coloredlogs  # type: ignore
+import serial.tools.list_ports  # type: ignore
 
 # Vendor/device ID to search for in USB devices.
 _ST_VENDOR_ID = 0x0483
diff --git a/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/unit_test_runner.py b/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/unit_test_runner.py
index d290198..328def7 100755
--- a/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/unit_test_runner.py
+++ b/targets/stm32f429i-disc1/py/stm32f429i_disc1_utils/unit_test_runner.py
@@ -22,8 +22,8 @@
 import threading
 from typing import List
 
-import coloredlogs
-import serial
+import coloredlogs  # type: ignore
+import serial  # type: ignore
 from stm32f429i_disc1_utils import stm32f429i_detector
 
 # Path used to access non-python resources in this python module.
