diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1c12c4190e41ece492de548c80eb6be59b76c408..c5f74494c3715595516c35374a9494bb01be9302 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,11 @@
+# 0.1.37
+
+_30th November 2020_
+
+### Fixed
+
+- Add emoji reactions is no longer missing from Cards view.
+
 # 0.1.36
 
 _20th November 2020_
diff --git a/app/package.json b/app/package.json
index 51978eb6b9d93ed8c053d48e62d4f55a3d3aad35..e3f7a8f55909069d1a6b6ca3cf921f1d6ea0fb4a 100644
--- a/app/package.json
+++ b/app/package.json
@@ -1,6 +1,6 @@
 {
   "name": "nodenogg.in",
-  "version": "0.1.36",
+  "version": "0.1.37",
   "private": true,
   "scripts": {
     "serve": "vue-cli-service serve",
diff --git a/app/src/components/OtherCardslayer.vue b/app/src/components/OtherCardslayer.vue
index 91c510372a4d6e1d7768f5752a8e5ac2ee82703a..a7940ce2c82c650115c6676e26313da891215349 100644
--- a/app/src/components/OtherCardslayer.vue
+++ b/app/src/components/OtherCardslayer.vue
@@ -4,15 +4,70 @@
       <div class="nodes">
         <p :inner-html.prop="nodetext | marked"></p>
 
-        <div class="allemoji">
-          <div
-            class="eachemoji"
-            v-for="(emojis, index) in configEmoji"
-            :key="index"
-          >
-            <p v-if="nodeid == emojis.node_id">
-              {{ emojis.emoji_text }}
-            </p>
+        <div class="eeee">
+          <input :value="nodeid" name="id" readonly hidden />
+          <input
+            id="emojifield"
+            class="regular-input"
+            v-model="input"
+            readonly
+          />
+
+          <emoji-picker @emoji="append" :search="search">
+            <div
+              class="emoji-invoker"
+              slot="emoji-invoker"
+              slot-scope="{ events: { click: clickEvent } }"
+              @click.stop="clickEvent"
+            >
+              <svg
+                height="24"
+                viewBox="0 0 24 24"
+                width="24"
+                xmlns="http://www.w3.org/2000/svg"
+              >
+                <path d="M0 0h24v24H0z" fill="none" />
+                <path
+                  d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"
+                />
+              </svg>
+            </div>
+            <div slot="emoji-picker" slot-scope="{ emojis, insert, display }">
+              <div
+                class="emoji-picker"
+                :style="{ top: display.y + 'px', left: display.x + 'px' }"
+              >
+                <div class="emoji-picker__search">
+                  <input type="text" v-model="search" v-focus />
+                </div>
+                <div>
+                  <div v-for="(emojiGroup, category) in emojis" :key="category">
+                    <h5>{{ category }}</h5>
+                    <div class="emojis">
+                      <span
+                        v-for="(emoji, emojiName) in emojiGroup"
+                        :key="emojiName"
+                        @click="insert(emoji), sentReact()"
+                        :title="emojiName"
+                        >{{ emoji }}</span
+                      >
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+          </emoji-picker>
+
+          <div class="allemoji">
+            <div
+              class="eachemoji"
+              v-for="(emojis, index) in configEmoji"
+              :key="index"
+            >
+              <p v-if="nodeid == emojis.node_id">
+                {{ emojis.emoji_text }}
+              </p>
+            </div>
           </div>
         </div>
       </div>
@@ -22,12 +77,20 @@
 
 <script>
 import { mapState } from 'vuex'
+import EmojiPicker from 'vue-emoji-picker'
 import marked from 'marked'
 export default {
   name: 'OtherCardslayer',
 
+  components: {
+    EmojiPicker,
+  },
+
   data: function () {
-    return {}
+    return {
+      input: '',
+      search: '',
+    }
   },
 
   props: {
@@ -44,6 +107,22 @@ export default {
   filters: {
     marked: marked,
   },
+
+  methods: {
+    append(emoji) {
+      this.input += emoji
+    },
+    sentReact(nodeid, emojitext) {
+      emojitext = this.input
+      nodeid = this.nodeid
+      this.$store.dispatch('addEmoji', {
+        nodeid,
+        emojitext,
+      })
+
+      this.input = ''
+    },
+  },
 }
 </script>
 
@@ -78,6 +157,10 @@ p {
   border-radius: 4px;
 }
 
+input {
+  display: none;
+}
+
 .allemoji {
   font-size: 2em;
   display: grid;
@@ -89,4 +172,79 @@ p {
 .eachemoji p {
   margin: 0em;
 }
+
+.emoji-invoker {
+  top: -0.5rem;
+  right: 0.5rem;
+  width: 1.5rem;
+  height: 2.5rem;
+  /* transform: scale(1.6); */
+  /* margin: 0em 0em 1em 0em; */
+  /* border-radius: 50%; */
+  cursor: pointer;
+  transition: all 0.8s;
+}
+.emoji-invoker:hover > svg {
+  fill: #84949b;
+
+  /* transform: scale(1.5); */
+}
+.emoji-invoker > svg {
+  fill: #b1c6d0;
+  margin-top: 10px;
+  margin-left: 0.2em;
+  transform: scale(1.5);
+}
+
+.emoji-picker {
+  transform: scale(1.2);
+  z-index: 1;
+  font-family: Montserrat;
+  border: 1px solid #ccc;
+  width: 18rem;
+  height: 20rem;
+  overflow: scroll;
+  padding: 1rem;
+  box-sizing: border-box;
+  border-radius: 0.5rem;
+  background: #fff;
+  box-shadow: 1px 1px 8px #c7dbe6;
+  margin-top: 3em;
+}
+.emoji-picker__search {
+  display: flex;
+}
+.emoji-picker__search > input {
+  flex: 1;
+  border-radius: 10rem;
+  border: 1px solid #ccc;
+  padding: 0.5rem 1rem;
+  outline: none;
+}
+.emoji-picker h5 {
+  margin-top: 0;
+  margin-bottom: 0;
+  color: #b1b1b1;
+  text-transform: uppercase;
+  font-size: 0.8rem;
+  cursor: default;
+}
+.emoji-picker .emojis {
+  display: flex;
+  flex-wrap: wrap;
+  justify-content: space-between;
+}
+.emoji-picker .emojis:after {
+  content: '';
+  flex: auto;
+}
+.emoji-picker .emojis span {
+  padding: 0.2rem;
+  cursor: pointer;
+  border-radius: 5px;
+}
+.emoji-picker .emojis span:hover {
+  background: #ececec;
+  cursor: pointer;
+}
 </style>
diff --git a/app/src/components/OtherNodeslayer.vue b/app/src/components/OtherNodeslayer.vue
index 1da4fcc0bd3ba40f3ae8ed691f333cecc7260d56..35d1234de59da83c53cc46d4061d9b9c312bea21 100644
--- a/app/src/components/OtherNodeslayer.vue
+++ b/app/src/components/OtherNodeslayer.vue
@@ -350,13 +350,13 @@ export default {
       this.input = ''
     },
   },
-  directives: {
-    focus: {
-      inserted(el) {
-        el.focus()
-      },
-    },
-  },
+  // directives: {
+  //   focus: {
+  //     inserted(el) {
+  //       el.focus()
+  //     },
+  //   },
+  // },
 }
 </script>