diff --git a/composer.json b/composer.json
deleted file mode 100644
index 7415d56b..00000000
--- a/composer.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-  "name": "islandora-rdm/islandora_fits",
-  "type": "drupal-module",
-  "description": "Enables Technical Metadata derivative generation.",
-  "keywords": [
-    "Drupal"
-  ],
-  "license": "GPL-2.0-or-later",
-  "homepage": "https://www.drupal.org/project/islandora_fits",
-  "minimum-stability": "dev",
-  "support": {
-    "issues": "https://www.drupal.org/project/issues/islandora_fits",
-    "source": "http://cgit.drupalcode.org/islandora_fits"
-  },
-  "require": {
-    "ext-SimpleXML": "*"
-  }
-}
diff --git a/CONTRIBUTING.md b/modules/islandora_fits/CONTRIBUTING.md
similarity index 100%
rename from CONTRIBUTING.md
rename to modules/islandora_fits/CONTRIBUTING.md
diff --git a/LICENSE b/modules/islandora_fits/LICENSE
similarity index 100%
rename from LICENSE
rename to modules/islandora_fits/LICENSE
diff --git a/README.md b/modules/islandora_fits/README.md
similarity index 100%
rename from README.md
rename to modules/islandora_fits/README.md
diff --git a/config/install/context.context.technical_metadata_on_ingest.yml b/modules/islandora_fits/config/install/context.context.technical_metadata_on_ingest.yml
similarity index 100%
rename from config/install/context.context.technical_metadata_on_ingest.yml
rename to modules/islandora_fits/config/install/context.context.technical_metadata_on_ingest.yml
diff --git a/config/install/core.entity_view_display.media.fits_technical_metadata.default.yml b/modules/islandora_fits/config/install/core.entity_view_display.media.fits_technical_metadata.default.yml
similarity index 100%
rename from config/install/core.entity_view_display.media.fits_technical_metadata.default.yml
rename to modules/islandora_fits/config/install/core.entity_view_display.media.fits_technical_metadata.default.yml
diff --git a/config/install/core.entity_view_display.media.fits_technical_metadata.fits_technical_metadata.yml b/modules/islandora_fits/config/install/core.entity_view_display.media.fits_technical_metadata.fits_technical_metadata.yml
similarity index 100%
rename from config/install/core.entity_view_display.media.fits_technical_metadata.fits_technical_metadata.yml
rename to modules/islandora_fits/config/install/core.entity_view_display.media.fits_technical_metadata.fits_technical_metadata.yml
diff --git a/config/install/core.entity_view_mode.media.fits_technical_metadata.yml b/modules/islandora_fits/config/install/core.entity_view_mode.media.fits_technical_metadata.yml
similarity index 100%
rename from config/install/core.entity_view_mode.media.fits_technical_metadata.yml
rename to modules/islandora_fits/config/install/core.entity_view_mode.media.fits_technical_metadata.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_complete.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_complete.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_complete.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_complete.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_file_size.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_file_size.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_file_size.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_file_size.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_media_file.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_file.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_media_file.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_file.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_media_of.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_of.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_media_of.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_of.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_media_use.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_use.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_media_use.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_media_use.yml
diff --git a/config/install/field.field.media.fits_technical_metadata.field_mime_type.yml b/modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_mime_type.yml
similarity index 100%
rename from config/install/field.field.media.fits_technical_metadata.field_mime_type.yml
rename to modules/islandora_fits/config/install/field.field.media.fits_technical_metadata.field_mime_type.yml
diff --git a/config/install/field.storage.media.field_complete.yml b/modules/islandora_fits/config/install/field.storage.media.field_complete.yml
similarity index 100%
rename from config/install/field.storage.media.field_complete.yml
rename to modules/islandora_fits/config/install/field.storage.media.field_complete.yml
diff --git a/config/install/media.type.fits_technical_metadata.yml b/modules/islandora_fits/config/install/media.type.fits_technical_metadata.yml
similarity index 100%
rename from config/install/media.type.fits_technical_metadata.yml
rename to modules/islandora_fits/config/install/media.type.fits_technical_metadata.yml
diff --git a/config/install/system.action.generate_a_technical_metadata_derivative.yml b/modules/islandora_fits/config/install/system.action.generate_a_technical_metadata_derivative.yml
similarity index 100%
rename from config/install/system.action.generate_a_technical_metadata_derivative.yml
rename to modules/islandora_fits/config/install/system.action.generate_a_technical_metadata_derivative.yml
diff --git a/config/optional/field.field.media.fits_technical_metadata.fits_ois_file_information_md5che.yml b/modules/islandora_fits/config/optional/field.field.media.fits_technical_metadata.fits_ois_file_information_md5che.yml
similarity index 100%
rename from config/optional/field.field.media.fits_technical_metadata.fits_ois_file_information_md5che.yml
rename to modules/islandora_fits/config/optional/field.field.media.fits_technical_metadata.fits_ois_file_information_md5che.yml
diff --git a/config/optional/field.storage.media.fits_ois_file_information_md5che.yml b/modules/islandora_fits/config/optional/field.storage.media.fits_ois_file_information_md5che.yml
similarity index 100%
rename from config/optional/field.storage.media.fits_ois_file_information_md5che.yml
rename to modules/islandora_fits/config/optional/field.storage.media.fits_ois_file_information_md5che.yml
diff --git a/css/islandora_fits.css b/modules/islandora_fits/css/islandora_fits.css
similarity index 100%
rename from css/islandora_fits.css
rename to modules/islandora_fits/css/islandora_fits.css
diff --git a/islandora_fits.info.yml b/modules/islandora_fits/islandora_fits.info.yml
similarity index 100%
rename from islandora_fits.info.yml
rename to modules/islandora_fits/islandora_fits.info.yml
diff --git a/islandora_fits.install b/modules/islandora_fits/islandora_fits.install
similarity index 100%
rename from islandora_fits.install
rename to modules/islandora_fits/islandora_fits.install
diff --git a/islandora_fits.libraries.yml b/modules/islandora_fits/islandora_fits.libraries.yml
similarity index 100%
rename from islandora_fits.libraries.yml
rename to modules/islandora_fits/islandora_fits.libraries.yml
diff --git a/islandora_fits.module b/modules/islandora_fits/islandora_fits.module
similarity index 100%
rename from islandora_fits.module
rename to modules/islandora_fits/islandora_fits.module
diff --git a/islandora_fits.services.yml b/modules/islandora_fits/islandora_fits.services.yml
similarity index 100%
rename from islandora_fits.services.yml
rename to modules/islandora_fits/islandora_fits.services.yml
diff --git a/migrations/islandora_fits_tags.yml b/modules/islandora_fits/migrations/islandora_fits_tags.yml
similarity index 100%
rename from migrations/islandora_fits_tags.yml
rename to modules/islandora_fits/migrations/islandora_fits_tags.yml
diff --git a/src/Plugin/Action/GenerateFitsDerivative.php b/modules/islandora_fits/src/Plugin/Action/GenerateFitsDerivative.php
similarity index 100%
rename from src/Plugin/Action/GenerateFitsDerivative.php
rename to modules/islandora_fits/src/Plugin/Action/GenerateFitsDerivative.php
diff --git a/src/Plugin/Field/FieldFormatter/FitsFormatter.php b/modules/islandora_fits/src/Plugin/Field/FieldFormatter/FitsFormatter.php
similarity index 100%
rename from src/Plugin/Field/FieldFormatter/FitsFormatter.php
rename to modules/islandora_fits/src/Plugin/Field/FieldFormatter/FitsFormatter.php
diff --git a/src/Services/XMLTransform.php b/modules/islandora_fits/src/Services/XMLTransform.php
similarity index 100%
rename from src/Services/XMLTransform.php
rename to modules/islandora_fits/src/Services/XMLTransform.php
diff --git a/templates/fits.html.twig b/modules/islandora_fits/templates/fits.html.twig
similarity index 100%
rename from templates/fits.html.twig
rename to modules/islandora_fits/templates/fits.html.twig
diff --git a/tests/src/Functional/LoadTest.php b/modules/islandora_fits/tests/src/Functional/LoadTest.php
similarity index 100%
rename from tests/src/Functional/LoadTest.php
rename to modules/islandora_fits/tests/src/Functional/LoadTest.php