diff --git a/frontend/src/components/BaseLayout.vue b/frontend/src/components/BaseLayout.vue
index bbb9854..2231b2e 100644
--- a/frontend/src/components/BaseLayout.vue
+++ b/frontend/src/components/BaseLayout.vue
@@ -17,88 +17,7 @@
                 <div class="navbar-collapse collapse">
                     <ul class="navbar-nav navbar-align">
                         <Notifications :notifications="notifications"/>
-                        <li class="nav-item dropdown">
-                            <a class="nav-icon dropdown-toggle" href="#" id="messagesDropdown" data-toggle="dropdown">
-                                <div class="position-relative">
-                                    <b-icon-chat-left class="bi-valign-middle"></b-icon-chat-left>
-                                </div>
-                            </a>
-                            <div class="dropdown-menu dropdown-menu-lg dropdown-menu-right py-0"
-                                 aria-labelledby="messagesDropdown">
-                                <div class="dropdown-menu-header">
-                                    <div class="position-relative">
-                                        4 New Messages
-                                    </div>
-                                </div>
-                                <div class="list-group">
-                                    <a href="#" class="list-group-item">
-                                        <div class="row g-0 align-items-center">
-                                            <div class="col-2">
-                                                <!--<img src="/static/assets/img/avatars/avatar-5.png"
-                                                     class="avatar img-fluid rounded-circle" alt="Vanessa Tucker">-->
-                                            </div>
-                                            <div class="col-10 pl-2">
-                                                <div class="text-dark">Vanessa Tucker</div>
-                                                <div class="text-muted small mt-1">Nam pretium turpis et arcu. Duis arcu
-                                                    tortor.
-                                                </div>
-                                                <div class="text-muted small mt-1">15m ago</div>
-                                            </div>
-                                        </div>
-                                    </a>
-                                    <a href="#" class="list-group-item">
-                                        <div class="row g-0 align-items-center">
-                                            <div class="col-2">
-                                                <!--<img src="/static/assets/img/avatars/avatar-2.png"
-                                                     class="avatar img-fluid rounded-circle" alt="William Harris">-->
-                                            </div>
-                                            <div class="col-10 pl-2">
-                                                <div class="text-dark">William Harris</div>
-                                                <div class="text-muted small mt-1">Curabitur ligula sapien euismod
-                                                    vitae.
-                                                </div>
-                                                <div class="text-muted small mt-1">2h ago</div>
-                                            </div>
-                                        </div>
-                                    </a>
-                                    <a href="#" class="list-group-item">
-                                        <div class="row g-0 align-items-center">
-                                            <div class="col-2">
-                                                <!--<img src="/static/assets/img/avatars/avatar-4.png"
-                                                     class="avatar img-fluid rounded-circle" alt="Christina Mason">-->
-                                            </div>
-                                            <div class="col-10 pl-2">
-                                                <div class="text-dark">Christina Mason</div>
-                                                <div class="text-muted small mt-1">Pellentesque auctor neque nec urna.
-                                                </div>
-                                                <div class="text-muted small mt-1">4h ago</div>
-                                            </div>
-                                        </div>
-                                    </a>
-                                   <!-- {% for messege in top_messages %}-->
-                                    <a href="#" class="list-group-item">
-                                        <div class="row g-0 align-items-center">
-                                            <div class="col-2">
-                                                <!--<img src="/static/assets/img/avatars/avatar-3.png"
-                                                     class="avatar img-fluid rounded-circle" alt="Sharon Lessman">-->
-                                            </div>
-                                            <div class="col-10 pl-2">
-                                                <div class="text-dark">Sharon Lessman</div>
-                                                <div class="text-muted small mt-1">Aenean tellus metus, bibendum sed,
-                                                    posuere ac,
-                                                    mattis non.
-                                                </div>
-                                                <div class="text-muted small mt-1">5h ago</div>
-                                            </div>
-                                        </div>
-                                    </a>
-                                    <!--{% endfor %}-->
-                                </div>
-                                <div class="dropdown-menu-footer">
-                                    <a href="#" class="text-muted">Show all messages</a>
-                                </div>
-                            </div>
-                        </li>
+                        <Messages :messages="messages"/>
                         <li class="nav-item dropdown">
                             <a class="nav-icon dropdown-toggle d-inline-block d-sm-none" href="#"
                                data-toggle="dropdown">
@@ -144,12 +63,14 @@ import * as BIcons from "bootstrap-icons-vue";
 import Footer from "@/components/Footer.vue";
 import Sidebar from "@/components/Sidebar.vue";
 import Notifications from "@/components/Notifications.vue";
+import Messages from "@/components/Messages.vue";
 
 export default {
     name: 'BaseLayout',
     components: {
         Footer,
         Sidebar,
+        Messages,
         Notifications,
         ...BIcons
     },
@@ -161,12 +82,11 @@ export default {
         },
     },
     computed: {
-        //...mapState(['notifications']),
+        ...mapState(['messages']),
         ...mapGetters(['notifications']),
         username() {
             return this.$route.params.username
         },
-        },
         top_notifications() {
             return this.notifications.slice(0, 5)
         },
diff --git a/frontend/src/components/Messages.vue b/frontend/src/components/Messages.vue
new file mode 100644
index 0000000..99e880b
--- /dev/null
+++ b/frontend/src/components/Messages.vue
@@ -0,0 +1,111 @@
+<template>
+    <li class="nav-item dropdown">
+        <a class="nav-icon dropdown-toggle" href="#" id="messagesDropdown" data-toggle="dropdown">
+            <div class="position-relative">
+                <b-icon-chat-left class="bi-valign-middle"></b-icon-chat-left>
+            </div>
+        </a>
+        <div class="dropdown-menu dropdown-menu-lg dropdown-menu-right py-0"
+             aria-labelledby="messagesDropdown">
+            <div class="dropdown-menu-header">
+                <div class="position-relative">
+                    4 New Messages
+                </div>
+            </div>
+            <div class="list-group">
+                <a href="#" class="list-group-item">
+                    <div class="row g-0 align-items-center">
+                        <div class="col-2">
+                            <!--<img src="/static/assets/img/avatars/avatar-5.png"
+                                 class="avatar img-fluid rounded-circle" alt="Vanessa Tucker">-->
+                        </div>
+                        <div class="col-10 pl-2">
+                            <div class="text-dark">Vanessa Tucker</div>
+                            <div class="text-muted small mt-1">Nam pretium turpis et arcu. Duis arcu
+                                tortor.
+                            </div>
+                            <div class="text-muted small mt-1">15m ago</div>
+                        </div>
+                    </div>
+                </a>
+                <a href="#" class="list-group-item">
+                    <div class="row g-0 align-items-center">
+                        <div class="col-2">
+                            <!--<img src="/static/assets/img/avatars/avatar-2.png"
+                                 class="avatar img-fluid rounded-circle" alt="William Harris">-->
+                        </div>
+                        <div class="col-10 pl-2">
+                            <div class="text-dark">William Harris</div>
+                            <div class="text-muted small mt-1">Curabitur ligula sapien euismod
+                                vitae.
+                            </div>
+                            <div class="text-muted small mt-1">2h ago</div>
+                        </div>
+                    </div>
+                </a>
+                <a href="#" class="list-group-item">
+                    <div class="row g-0 align-items-center">
+                        <div class="col-2">
+                            <!--<img src="/static/assets/img/avatars/avatar-4.png"
+                                 class="avatar img-fluid rounded-circle" alt="Christina Mason">-->
+                        </div>
+                        <div class="col-10 pl-2">
+                            <div class="text-dark">Christina Mason</div>
+                            <div class="text-muted small mt-1">Pellentesque auctor neque nec urna.
+                            </div>
+                            <div class="text-muted small mt-1">4h ago</div>
+                        </div>
+                    </div>
+                </a>
+                <!-- {% for messege in top_messages %}-->
+                <a href="#" class="list-group-item">
+                    <div class="row g-0 align-items-center">
+                        <div class="col-2">
+                            <!--<img src="/static/assets/img/avatars/avatar-3.png"
+                                 class="avatar img-fluid rounded-circle" alt="Sharon Lessman">-->
+                        </div>
+                        <div class="col-10 pl-2">
+                            <div class="text-dark">Sharon Lessman</div>
+                            <div class="text-muted small mt-1">Aenean tellus metus, bibendum sed,
+                                posuere ac,
+                                mattis non.
+                            </div>
+                            <div class="text-muted small mt-1">5h ago</div>
+                        </div>
+                    </div>
+                </a>
+                <!--{% endfor %}-->
+            </div>
+            <div class="dropdown-menu-footer">
+                <a href="#" class="text-muted">Show all messages</a>
+            </div>
+        </div>
+    </li>
+</template>
+
+<script>
+import {mapGetters, mapMutations} from 'vuex';
+import * as BIcons from "bootstrap-icons-vue";
+
+export default {
+    name: "Messages",
+    components: {
+        ...BIcons
+    },
+    props: {
+        messages: {
+            type: Array,
+            default: () => []
+        }
+    },
+    computed: {
+        top_messages() {
+            return this.messages.slice(0, 4);
+        }
+    }
+}
+</script>
+
+<style scoped>
+
+</style>
\ No newline at end of file
diff --git a/frontend/src/components/Notifications.vue b/frontend/src/components/Notifications.vue
index 1c8daab..329f2c5 100644
--- a/frontend/src/components/Notifications.vue
+++ b/frontend/src/components/Notifications.vue
@@ -54,7 +54,12 @@ export default {
     components: {
         ...BIcons
     },
-    props: ['notifications'],
+    props: {
+        notifications: {
+            type: Array,
+            default: () => []
+        }
+    },
     computed: {
         top_notifications() {
             return this.notifications.sort((a, b) => {
diff --git a/frontend/src/store.js b/frontend/src/store.js
index d253edd..b18ebff 100644
--- a/frontend/src/store.js
+++ b/frontend/src/store.js
@@ -17,6 +17,7 @@ export default createStore({
         item_map: {},
         home_servers: null,
         all_friends_servers: null,
+        messages: [],
         resolver: new FallBackResolver(),
         unreachable_neighbors: new NeighborsCache(),
         tags: [],