diff --git a/modules/islandora_audio/islandora_audio.module b/modules/islandora_audio/islandora_audio.module
index a5093c1b..07b93840 100644
--- a/modules/islandora_audio/islandora_audio.module
+++ b/modules/islandora_audio/islandora_audio.module
@@ -30,3 +30,18 @@ function islandora_audio_help($route_name, RouteMatchInterface $route_match) {
default:
}
}
+
+/**
+ * Implements hook_theme().
+ */
+function islandora_audio_theme() {
+ return [
+ 'islandora_file_audio' => [
+ 'variables' => [
+ 'files' => [],
+ 'tracks' => NULL,
+ 'attributes' => NULL,
+ ],
+ ],
+ ];
+}
diff --git a/modules/islandora_audio/src/Plugin/Field/FieldFormatter/IslandoraFileAudioFormatter.php b/modules/islandora_audio/src/Plugin/Field/FieldFormatter/IslandoraFileAudioFormatter.php
new file mode 100644
index 00000000..579da554
--- /dev/null
+++ b/modules/islandora_audio/src/Plugin/Field/FieldFormatter/IslandoraFileAudioFormatter.php
@@ -0,0 +1,28 @@
+
+ {% for file in files %}
+
+ {% if tracks %}
+ {% for track in tracks %}
+