diff --git a/assets/js/webmentions.template.js b/assets/js/webmentions.template.js
new file mode 100644
index 0000000..4327c47
--- /dev/null
+++ b/assets/js/webmentions.template.js
@@ -0,0 +1,17 @@
+async function displayWebmentions() {
+ let endpoint = '{{ .Param "indieweb.endpoints.webmentiond" }}';
+ let target = window.location.href;
+ let resp = await fetch(`${endpoint}get?target=${target}`);
+ let data = await resp.json();
+ let mentionsListView = document.querySelector('#mentionslist');
+ let list = document.createElement('ul');
+ data.forEach(mention => {
+ let listItem = document.createElement('li');
+ listItem.innerHTML = `${mention.author_name ? mention.author_name : mention.source}${mention.title ? ` ${mention.title}` : ''}`;
+ list.appendChild(listItem);
+ });
+ mentionsListView.innerHTML = ``;
+ mentionsListView.appendChild(list);
+}
+
+displayWebmentions();
\ No newline at end of file
diff --git a/layouts/partials/mentions.html b/layouts/partials/mentions.html
index 7e5e1ae..3391469 100644
--- a/layouts/partials/mentions.html
+++ b/layouts/partials/mentions.html
@@ -1,17 +1,12 @@
{{ if .Param "indieweb.enabled" }}
{{ if not (.Param "indieweb.hidewmform") }}
{{ if .Param "indieweb.endpoints.webmention" }}
-{{ $md5pl := md5 (replace .Permalink "/" "") }}
-{{ $mentions := index .Site.Data.mentions $md5pl }}
-{{ $dateFormat := ( .Site.Params.dateformat | default "January 02, 2006") }}
{{ T "interactions" }}
- {{ with $mentions }}
-
- {{ range sort . ".date" "asc" }}{{ $sourceUrl := urls.Parse .source }}
- - {{ $sourceUrl.Host }} {{ dateFormat $dateFormat .date }}
- {{ end }}
-
+ {{ if .Param "indieweb.endpoints.webmentiond" }}
+
+ {{ $wmScript := resources.Get "js/webmentions.template.js" | resources.ExecuteAsTemplate "js/webmentions.js" . | minify | fingerprint }}
+
{{ end }}