diff --git a/src/components/comments.js b/src/components/comments.js
index c06a8e7..863011c 100644
--- a/src/components/comments.js
+++ b/src/components/comments.js
@@ -2,6 +2,7 @@ import React, { useState } from 'react'
 
 import ReactButton from './reactButton.js'
 import Modal from './modal.js'
+import Link from 'next/link'
 
 import styles from './comments.module.css'
 
@@ -61,7 +62,12 @@ function Comment({ comment, index, onComment, onDelete, onReact, uid }) {
             >
               {displayed ? '[-]' : '[+]'}
             
-            
User #{user}
+            
+              
+                User #{user}
+              
+            
+             @ {date}
           
           {date}
         
diff --git a/src/components/comments.module.css b/src/components/comments.module.css
index 3216d9b..64005c3 100644
--- a/src/components/comments.module.css
+++ b/src/components/comments.module.css
@@ -75,6 +75,7 @@
 
 .commentAreaContainer > textarea {
   width: 99%;
+  font-size: 18px;
 }
 
 .commentAreaContainer > div {
diff --git a/src/components/layout.js b/src/components/layout.js
index f5df6db..178e5b1 100644
--- a/src/components/layout.js
+++ b/src/components/layout.js
@@ -4,12 +4,14 @@ import dynamic from 'next/dynamic'
 
 const Snowfall = dynamic(() => import('react-snowfall'), { ssr: false })
 
+import LogoutIcon from './logoutIcon.js'
 import Modal from './modal.js'
-import tabs from '../data/tabs.json'
 import constants from '../constants.json'
 import BB from './b.js'
 
 import styles from './layout.module.css'
+import tabs from '../data/tabs.json'
+import topBarLinks from '../data/topBarLinks.json'
 
 const renderSnow = () => {
   const date = new Date()
@@ -56,15 +58,19 @@ function Donate() {
 }
 
 function UserStatus({ userId, unreads }) {
+  const unreadCount = unreads ? unreads.length : 0
   return (
     
     
   )
@@ -165,15 +171,20 @@ export default function Layout({ children, router, globalData }) {
           
         
         
         
         
diff --git a/src/components/layout.module.css b/src/components/layout.module.css
index 4f99d14..546555b 100644
--- a/src/components/layout.module.css
+++ b/src/components/layout.module.css
@@ -7,6 +7,7 @@
   width: 100%;
   max-width: 1200px;
   border-bottom: 1px solid var(--primary-color);
+  box-shadow: 0px 3px 3px -3px var(--primary-color);
 
   height: 45px;
 }
@@ -19,16 +20,33 @@
   border: none;
   margin: 0px 15px;
 }
+@media screen and (max-width: 700px) {
+  .topBar img {
+    display: none;
+  }
+
+  .topBarLinks > *:nth-child(1) {
+    display: none;
+  }
+  .topBarLinks > *:nth-child(3) {
+    display: none;
+  }
+}
 
 .topBarLinks {
   display: flex;
-  align-items: center;
+  align-items: stretch;
   word-wrap: break-word;
 }
 
 .topBarLinks > * {
+  display: flex;
+  align-items: center;
+
+  border: 0.5px solid transparent;
   text-align: center;
-  padding: 0px 10px;
+  padding: 0px 8px;
+  margin: 0px 2px;
   text-decoration: none;
 }
 
@@ -37,6 +55,11 @@
   border-radius: 5px;
 }
 
+.topBarLinks a.active {
+  border: 0.5px solid var(--text-color);
+  border-radius: 5px;
+}
+
 .sidebar {
   top: 45px;
   display: flex;
@@ -54,6 +77,8 @@
     width: 100%;
     height: auto;
     position: relative;
+    border-bottom: 1px solid var(--primary-color);
+    box-shadow: 0px 3px 3px -3px var(--primary-color);
   }
 
   .sidebar a {
@@ -79,14 +104,13 @@
 }
 
 .sidebarLinks > a {
-  border: 0.5px solid transparent;
   display: block;
+  border: 0.5px solid transparent;
   text-align: center;
   color: black;
   font-size: 108%;
   padding: 14px;
-  margin-top: 4px;
-  margin-bottom: 4px;
+  margin: 5px 2px;
   text-decoration: none;
   color: var(--bright-color);
   transition: width 0.5s, height 0.5s, ease-in 0.5s;
@@ -146,7 +170,7 @@
 @media screen and (max-width: 700px) {
   .menuicon div {
     display: block;
-    margin: 6px 0;
+    margin: 6px;
     width: 30px;
     height: 5px;
     background-color: var(--bright-color);
@@ -198,13 +222,14 @@
 
 .unreadNotification > span {
   top: 8px;
+  right: -8px;
   display: inline-block;
   position: relative;
 }
 
 .unreadNotification > div {
   display: inline-block;
-  right: 10px;
+  right: 5px;
   top: 10px;
   position: relative;
 
@@ -216,7 +241,6 @@
 
 @media screen and (max-width: 700px) {
   .unreadNotification > div {
-    right: -10px;
-    top: -23px;
+    top: 10px;
   }
 }
diff --git a/src/components/logoutIcon.js b/src/components/logoutIcon.js
new file mode 100644
index 0000000..a0db5ba
--- /dev/null
+++ b/src/components/logoutIcon.js
@@ -0,0 +1,17 @@
+import React from 'react'
+
+export default function LogoutIcon({ size }) {
+  return (
+    
+      
+    
+  )
+}
diff --git a/src/components/newsEntry.js b/src/components/newsEntry.js
index c34df05..0ce935c 100644
--- a/src/components/newsEntry.js
+++ b/src/components/newsEntry.js
@@ -2,6 +2,7 @@ import React from 'react'
 
 import ReactButton from './reactButton.js'
 import Comments from './comments.js'
+import Link from 'next/link'
 
 import styles from './newsEntry.module.css'
 
@@ -28,7 +29,11 @@ export default function NewsEntry({
         
diff --git a/src/components/todoStuff/todoBoard.module.css b/src/components/todoStuff/todoBoard.module.css
index 90c8ea2..4097db9 100644
--- a/src/components/todoStuff/todoBoard.module.css
+++ b/src/components/todoStuff/todoBoard.module.css
@@ -6,7 +6,6 @@
 
 .table {
   display: flex;
-  min-width: 800px;
 }
 
 .categoryName {
diff --git a/src/components/todoStuff/todoCard.js b/src/components/todoStuff/todoCard.js
index 1b02201..f783307 100644
--- a/src/components/todoStuff/todoCard.js
+++ b/src/components/todoStuff/todoCard.js
@@ -34,9 +34,9 @@ export default function TodoCard(props) {
         
       
       
-        
-          
{`Szavazatok: ${votes.length}`}
-        
+        
{`Szavazatok: ${votes.length}`}
         {`Nehézség: ${points}`}
       
+              {this.renderMsg(currMessage, i)}
+            
+          )
+          if (i === selectedMsgs.length - 1 && unread === 0) {
+            if (sender !== selectedUser) {
+              acc.push()
+            }
+          }
+          prevMsg = currMessage
+          return acc
+        }, [])}
+      >
     )
   }
 
-  renderSidebarEntryes() {
-    const { msgs } = this.state
-    const sorted = Object.keys(msgs).sort((a, b) => {
-      const lastA = msgs[a].slice(-1)[0]
-      const lastB = msgs[b].slice(-1)[0]
-      return lastB.date - lastA.date
-    })
-    return sorted.map((key, i) => {
-      return this.renderSidebarEntry(i, key)
-    })
+  renderMsg(message, key) {
+    const { msg, type } = message
+
+    if (type === 'text') {
+      return {msg}
+    } else if (type === 'img') {
+      return (
+        
+           +        
+      )
+    } else if (type === 'file') {
+      return (
+        
+          {msg.split('/').slice(-1)}
+        
+      )
+    } else {
+      console.error(message)
+      return
+        
+      )
+    } else if (type === 'file') {
+      return (
+        
+          {msg.split('/').slice(-1)}
+        
+      )
+    } else {
+      console.error(message)
+      return Invalid msg type {type}
+    }
+  }
+
+  renderLoadMore() {
+    const { selectedUser, msgs } = this.state
+    const group = msgs[selectedUser]
+    const firstMessage = group.msgs[0]
+
+    if (group.lastLoaded) {
+      return (
+        
+      )
+    }
+
+    return (
+       {
+          this.socket.emit('get chat messages', {
+            chatPartner: selectedUser,
+            from: firstMessage.date,
+          })
+        }}
+      >
+        
Több betöltése ...
+      
-        
#{key}
-        
{lastMessage.msg}
+        
+        
+          {lastMessage.type === 'text' ? lastMessage.msg : 'Csatolt fájl'}
+        
       
         
-          
{`Connected as ${user}`}
+          Chat - Qmining | Frylabs.net
         
         {connected ? (
           <>
@@ -466,24 +668,8 @@ export default class Chat extends React.Component {
             
           >
         ) : (
-          
+          
             
-            
 {
-                this.setState({
-                  user: parseInt(e.target.value),
-                })
-              }}
-              type={'text'}
-              placeholder={'user'}
-            />
-            
 {
-                this.connect(this.state.user)
-              }}
-            >
-              connect
-            
            
         )}