diff --git a/frontend/src/components/CustomListElement.vue b/frontend/src/components/CustomListElement.vue
index 9d64bf14cd8fc2840eec184b44889ddaa86c321c..ab1f42eff83a805b2f772748ed32ce3ea399a06c 100644
--- a/frontend/src/components/CustomListElement.vue
+++ b/frontend/src/components/CustomListElement.vue
@@ -28,7 +28,9 @@ export default {
     <div class="list-item-header mb-0">{{ title }}</div>
 
     <!-- Bottom-left description -->
-    <div class="list-item-description mb-0">{{ description }}</div>
+    <div class="list-item-description mb-0">
+      {{ description.length > 50 ? description.slice(0, 30) + '...' : description }}
+    </div>
   </div>
 </template>
 
diff --git a/frontend/src/components/MainPage.vue b/frontend/src/components/MainPage.vue
index ad8a622c217be8cd808d49268618e677f01ba8ef..87b53027efd73a5ddbc15462b1e778b267aa7b2a 100644
--- a/frontend/src/components/MainPage.vue
+++ b/frontend/src/components/MainPage.vue
@@ -39,17 +39,19 @@ export default {
   },
   methods: {
     async validateSession(){
-      let url = "http://localhost:9876/user/validateSession"
+      if(this.$route.name === 'main') {
+        let url = "http://localhost:9876/user/validateSession"
 
-      const response = await fetch(url, {
-       method: 'GET',
-       credentials: 'include'
-      })
+        const response = await fetch(url, {
+          method: 'GET',
+          credentials: 'include'
+        })
 
-      if(response.status === 401){
-        localStorage.removeItem("userId")
-        localStorage.removeItem("isLoggedIn")
-        await this.$router.push({ name: 'login' })
+        if (response.status === 401) {
+          localStorage.removeItem("userId")
+          localStorage.removeItem("isLoggedIn")
+          await this.$router.push({name: 'login'})
+        }
       }
     },
     showDetails(item) {
@@ -155,16 +157,24 @@ export default {
       <b-col class="main-col justify-content-center align-items-center">
         <b-card class="main-card border-1 shadow-lg" title="ToDo-App">
           <b-card-body class="main-card-body mt-1">
-
-            <b-button class="mb-4" variant="primary" @click="showAddModal = true">
-              Hinzufügen
-            </b-button>
+            <b-row>
+              <b-col>
+                <b-button class="mb-4" variant="primary" @click="showAddModal = true">
+                  Hinzufügen
+                </b-button>
+              </b-col>
+              <b-col>
+                <b-button class="mb-4" variant="danger" @click="signout">
+                  Log out
+                </b-button>
+              </b-col>
+            </b-row>
             <b-tabs class="tabs mt-2">
               <b-tab class="tab" title="Active ToDos">
                 <ul  class="main-list mt-3" v-if="items.length > 0">
                   <li v-for="(item, index) in items" :key="index" class="list-group-item">
-                    <div class="d-flex justify-content-between align-items-center w-100">
-                      <div class="flex-grow-1">
+                    <div class="custom-list-element d-flex justify-content-between align-items-center w-100">
+                      <div @click="showDetails(item)" class="flex-grow-1">
                         <CustomListElement :title="item.title" :description="item.description" :completed="item.completed"></CustomListElement>
                       </div>
                       <div class="badge-container">
@@ -179,8 +189,8 @@ export default {
               <b-tab class="tab" title="Completed ToDos">
                 <ul class="main-list mt-3" v-if="completedItems.length > 0">
                   <li v-for="(item, index) in completedItems" :key="index" class="list-group-item">
-                    <div class="d-flex justify-content-between align-items-center w-100">
-                      <div class="flex-grow-1">
+                    <div class="custom-list-element d-flex justify-content-between align-items-center w-100">
+                      <div @click="showDetails(item)" class="flex-grow-1">
                         <CustomListElement :title="item.title" :description="item.description" :completed="item.completed"></CustomListElement>
                       </div>
                       <div class="badge-container">
@@ -196,7 +206,11 @@ export default {
 
             <!-- details modal -->
             <b-modal v-model="showDetailsModal" title="Details" hide-header id="showDetailsModal">
-              <p>{{ selectedItem }}</p>
+              <h3>Title: {{ selectedItem.title }}</h3>
+              <p style="overflow-wrap: break-word"> Description: <br> {{ selectedItem.description }}</p>
+              <div>Status: <br>
+                {{selectedItem.completed ? 'completed' : 'not completed'}}
+              </div>
             </b-modal>
 
             <b-modal @ok="deleteTodo(this.todoIdForDeleteModal)" hie-header id="delete-modal">
@@ -248,6 +262,18 @@ export default {
   overflow-y: auto;
 }
 
+.custom-list-element {
+  background-color: #1c1c1c;
+  border: 1px #fff solid;
+  padding: 5px;
+  margin-bottom: 10px;
+  border-radius: 20px;
+}
+
+.custom-list-element:hover {
+  background-color: #2d2d2d;
+}
+
 .badge-container {
   display: flex;
   align-items: center;