diff --git a/src/main.js b/src/main.js
index bac4d0f7ba819afd50b39d7bea41c57c19875fdc..b994e154267e7436db5da8e3d7a3cca33b74a4ef 100644
--- a/src/main.js
+++ b/src/main.js
@@ -103,12 +103,11 @@ window.fetch('/static/terms-of-service.html')
     store.dispatch('setOption', { name: 'tos', value: html })
   })
 
-window.fetch('/static/emoji.txt')
-  .then((res) => res.text())
-  .then((csv) => {
-    const emoji = csv.split('\n').map((row) => {
-      const values = row.split(', ')
-      return { shortcode: values[0], image_url: values[1] }
+window.fetch('/api/pleroma/emoji.json')
+  .then((res) => res.json())
+  .then((values) => {
+    const emoji = Object.keys(values).map((key) => {
+      return { shortcode: key, image_url: values[key] }
     })
     store.dispatch('setOption', { name: 'emoji', value: emoji })
   })