diff --git a/json_schema/v1.0.0/schema.json b/json_schema/v1.0.0/schema.json
index 23f30364016f1d89d7e344800d458a868fb53d3e..e2fc3c424c7cc563a8fdd9f31360cd6eb5e6e06a 100755
--- a/json_schema/v1.0.0/schema.json
+++ b/json_schema/v1.0.0/schema.json
@@ -120,6 +120,7 @@
       }
     },
     "fields": {
+      "description": "Extension metadata model.",
       "properties": {
         "prefix:name": {
           "title": "Process name",
@@ -141,4 +142,4 @@
       "type": "object"
     }
   }
-}
\ No newline at end of file
+}
diff --git a/pydantic_pystac_extensions_example/__init__.py b/pydantic_pystac_extensions_example/__init__.py
index 426540f2987ce3f425103fddac0c4ca1499017f0..03b57f3214d780fc610c0696a8ab2cb9fbe56df2 100644
--- a/pydantic_pystac_extensions_example/__init__.py
+++ b/pydantic_pystac_extensions_example/__init__.py
@@ -1,4 +1,6 @@
-from .my_extension import MyExtension, MyExtensionModel
+"""pydantic-pystac-extensions implementation example."""
+
+from .my_extension import MyExtension, MyExtensionModel  # noqa
 
 # Remember to bump version before each new package build
-__version__ = "0.0.10"
\ No newline at end of file
+__version__ = "0.0.10"
diff --git a/pydantic_pystac_extensions_example/my_extension.py b/pydantic_pystac_extensions_example/my_extension.py
index 205f16d71cb02d8e64b21b47047150f9c7f44a20..bbf127b4e1d82348f66313c3308f19c36b2e194d 100644
--- a/pydantic_pystac_extensions_example/my_extension.py
+++ b/pydantic_pystac_extensions_example/my_extension.py
@@ -1,5 +1,7 @@
+"""pydantic-pystac-extensions implementation example."""
+
 from pydantic_pystac_extensions import create_extension_cls, BaseExtensionModel
-from pydantic import Field, ConfigDict
+from pydantic import Field
 from typing import List
 
 SCHEMA_URI: str = (
@@ -8,20 +10,13 @@ SCHEMA_URI: str = (
 )
 
 
-# Extension model
 class MyExtensionModel(BaseExtensionModel):
-    # Required so that one model can be instantiated with the attribute name
-    # rather than the alias
-    model_config = ConfigDict(populate_by_name=True)
+    """Extension metadata model."""
 
-    # Metadata fields
     name: str = Field(title="Process name", alias="prefix:name")
     authors: List[str] = Field(title="Authors", alias="prefix:authors")
     version: str = Field(title="Process version", alias="prefix:version")
 
 
 # Extension class
-MyExtension = create_extension_cls(
-    model_cls=MyExtensionModel,
-    schema_uri=SCHEMA_URI
-)
+MyExtension = create_extension_cls(model_cls=MyExtensionModel, schema_uri=SCHEMA_URI)
diff --git a/tests/extension_test.py b/tests/extension_test.py
index 64586ce9bdb98dfe87f6143edc2e906299f9f410..1eff9b4aeb3b3d3ec51b456cf1d342e45754afbc 100644
--- a/tests/extension_test.py
+++ b/tests/extension_test.py
@@ -1,15 +1,15 @@
-from pydantic_pystac_extensions_example import MyExtension, MyExtensionModel
+"""pydantic-pystac-extensions implementation example tests."""
+
 from pydantic_pystac_extensions.testing import basic_test, is_schema_url_synced
+from pydantic_pystac_extensions_example import MyExtension, MyExtensionModel
+
 
-ext_md = MyExtensionModel(
-    name="test",
-    authors=["michel", "denis"],
-    version="alpha"
-)
+def test_schema_sync():
+    """Check that the online schema is in sync with the actual schema of the class."""
+    is_schema_url_synced(MyExtension)
 
-# Check that the online schema is in sync with the actual schema of the class
-is_schema_url_synced(MyExtension)
 
-# Basic tests (apply the extension to item/asset, read metadata from
-# extended item/asset, etc.)
-basic_test(ext_md, MyExtension)
+def test_read_write():
+    """Basic tests (apply the extension to item/asset, read metadata from stac objects."""
+    ext_md = MyExtensionModel(name="test", authors=["michel", "denis"], version="alpha")
+    basic_test(ext_md, MyExtension)