diff --git a/client/redux/appSlice.ts b/client/redux/appSlice.ts
index 8ad47cd..20c2a06 100644
--- a/client/redux/appSlice.ts
+++ b/client/redux/appSlice.ts
@@ -6,12 +6,14 @@
 interface appState {
   accountId: string;
   accountObject: Account;
+  refresh: boolean;
 }
 
 // Define the initial state using that type
 const initialState: appState = {
   accountId: "",
   accountObject: null,
+  refresh: true,
 };
 
 export const appSlice = createSlice({
@@ -23,12 +25,15 @@
       state.accountId = action.payload;
     },
     setAccountObject: (state, action: PayloadAction<Account>) => {
-      state.accountObject = action.payload ;
+      state.accountObject = action.payload;
+    },
+    setRefreshFromSlice: (state) => {
+      state.refresh = !state.refresh;
     },
   },
 });
 
-export const { setAccountId, setAccountObject } = appSlice.actions;
+export const { setAccountId, setAccountObject, setRefreshFromSlice } = appSlice.actions;
 
 // Other code such as selectors can use the imported `RootState` type
 // export const selectCount = (state: RootState) => state.app.value;
diff --git a/client/src/App.js b/client/src/App.js
index 77bf4ea..c05265e 100644
--- a/client/src/App.js
+++ b/client/src/App.js
@@ -81,7 +81,7 @@
         <Route path="/newAccount" element={<AccountCreationDialog />}>
           <Route path="jami" element={<JamiAccountDialog />} />
         </Route>
-        <Route path="/Contacts" element={<ContactList />} />
+        {/* <Route path="/Contacts" element={<ContactList />} /> */}
         <Route path="/Theme" element={<ThemeDemonstrator />} />
         <Route path="/setup" element={<ServerSetup />} />
         <Route path="/" index element={<Home />} />
diff --git a/client/src/components/ConversationList.js b/client/src/components/ConversationList.js
index 6806781..1c8e3e0 100644
--- a/client/src/components/ConversationList.js
+++ b/client/src/components/ConversationList.js
@@ -1,13 +1,19 @@
 import List from '@mui/material/List'
-import React from 'react'
+import React, { useEffect } from "react";
 import ConversationListItem from './ConversationListItem'
 import ListSubheader from '@mui/material/ListSubheader';
 import Conversation from '../../../model/Conversation';
 import { GroupRounded as GroupIcon } from '@mui/icons-material';
 import Typography from '@mui/material/Typography';
+import { useAppSelector } from '../../redux/hooks';
 
 export default function ConversationList(props) {
-    console.log(props)
+     const { refresh } = useAppSelector((state) => state.app);
+
+     useEffect(() => {
+      console.log("refresh list");
+    }, [refresh]);
+
     return (
         <div className="rooms-list">
             <List>
diff --git a/client/src/components/ConversationListItem.js b/client/src/components/ConversationListItem.js
index 4616da6..36932bf 100644
--- a/client/src/components/ConversationListItem.js
+++ b/client/src/components/ConversationListItem.js
@@ -1,18 +1,18 @@
 import React, { useEffect } from 'react';
-import ReactDOM from 'react-dom';
 import Modal from 'react-modal';
 import authManager from '../AuthManager'
 import ConversationAvatar from './ConversationAvatar'
 import Conversation from '../../../model/Conversation'
 import React, { useState } from "react";
 import { useNavigate, useParams } from "react-router-dom"
-import { Person } from "@mui/icons-material";
 import { ListItem, ListItemAvatar, ListItemText, Box, Typography } from '@mui/material'
-import { Button, Stack, Switch, ThemeProvider, Typography, Modal as ModalUM } from "@mui/material"
+import { Button, Stack, Typography, Modal as ModalUM } from "@mui/material"
 import { RemoveContactIcon, VideoCallIcon } from './svgIcons';
 import { AudioCallIcon, BlockContactIcon, ContactDetailsIcon, CrossIcon, MessageIcon } from './svgIcons';
-import { styled } from "@mui/material/styles";
-import {QRCodeSVG, QRCodeCanvas} from 'qrcode.react';
+import { QRCodeCanvas} from 'qrcode.react';
+import { setRefreshFromSlice } from '../../redux/appSlice';
+import { useAppDispatch } from '../../redux/hooks';
+
 
 const customStyles = {
   content: {
@@ -88,13 +88,9 @@
 
 export default function ConversationListItem(props) {
   const { conversationId, contactId } = useParams();
+  const dispatch = useAppDispatch();
+
   const conversation = props.conversation;
-  console.log(
-    "XXX",
-    conversation,
-    conversation.id,
-    conversation.getAccountId()
-  );
 
   const pathId = conversationId || contactId;
   const isSelected = conversation.getDisplayUri() === pathId;
@@ -105,7 +101,7 @@
   const [modalDeleteIsOpen, setModalDeleteIsOpen] = useState(false);
   const [blockOrRemove, setBlockOrRemove] = useState(true);
   const [userId, setUserId] = useState(
-    conversation.getFirstMember().contact.getUri()
+    conversation?.getFirstMember()?.contact.getUri()
   );
   const [isSwarm, setIsSwarm] = useState("true");
 
@@ -158,16 +154,16 @@
         }
       )
       .then((res) => res.json())
-      .then((result) => {})
-      .catch((e) => console.log(`ERROR ${typeOfRemove}ing CONTACT : `, e));
+      .then((result) => {
+        console.log("propre");
+        dispatch(setRefreshFromSlice());
+      })
+      .catch((e) => {
+        console.log(`ERROR ${typeOfRemove}ing CONTACT : `, e);
+        dispatch(setRefreshFromSlice());
+      });
     closeModalDelete();
-    setRefresh(!refresh)
   };
-  const [refresh, setRefresh] = useState(true)
-
-  useEffect(() => {
-    console.log("refresh");
-  }, [refresh]);
 
 
   const uri = conversation.getId()
diff --git a/client/src/pages/addContactPage.jsx b/client/src/pages/addContactPage.jsx
index e47ed95..96d7bdc 100644
--- a/client/src/pages/addContactPage.jsx
+++ b/client/src/pages/addContactPage.jsx
@@ -4,11 +4,15 @@
 import { Box, Container, Fab, Card, CardContent, Typography } from '@mui/material';
 import GroupAddRounded from '@mui/icons-material/GroupAddRounded';
 import authManager from '../AuthManager'
+import { useAppDispatch } from '../../redux/hooks';
+import { setRefreshFromSlice } from '../../redux/appSlice';
+
 
 export default function AddContactPage(props) {
   const navigate = useNavigate();
   const accountId = props.accountId || props.match.params.accountId
   const contactId = props.contactId || props.match.params.contactId
+  const dispatch = useAppDispatch();
 
   const handleClick = async e => {
     const response = await authManager.fetch(`/api/accounts/${accountId}/conversations`, {
@@ -18,7 +22,10 @@
         'Content-Type': 'application/json'
       },
       body: JSON.stringify({members:[contactId]})
-    }).then(res => res.json())
+    }).then(res => {
+      dispatch(setRefreshFromSlice())
+      return res.json()
+    })
 
     console.log(response)
     if (response.conversationId) {
diff --git a/client/src/pages/messenger.jsx b/client/src/pages/messenger.jsx
index 84a4dc5..ea64d9b 100644
--- a/client/src/pages/messenger.jsx
+++ b/client/src/pages/messenger.jsx
@@ -12,8 +12,12 @@
 import LoadingPage from '../components/loading';
 import { useParams } from 'react-router';
 import { Stack } from '@mui/material';
+import { useAppSelector } from '../../redux/hooks';
+
 
 const Messenger = (props) => {
+  const { refresh } = useAppSelector((state) => state.app);
+
   const [conversations, setConversations] = useState(undefined)
   const [searchQuery, setSearchQuery] = useState('')
   const [searchResult, setSearchResults] = useState(undefined)
@@ -24,6 +28,7 @@
   const contactId = props.contactId || params.contactId
 
   useEffect(() => {
+    console.log("REFRESH CONVERSATIONS FROM MESSENGER")
     const controller = new AbortController()
     authManager.fetch(`/api/accounts/${accountId}/conversations`, {signal: controller.signal})
     .then(res => res.json())
@@ -31,8 +36,8 @@
       console.log(result)
       setConversations(Object.values(result).map(c => Conversation.from(accountId, c)))
     })
-    // return () => controller.abort() // crash on React18
-  }, [accountId])
+    // return () => controller.abort()
+  }, [accountId, refresh])
 
   useEffect(() => {
     if (!searchQuery)
diff --git a/client/src/themes/icons/Block_Black_24dp.svg b/client/src/themes/icons/Block_Black_24dp.svg
deleted file mode 100644
index 0518586..0000000
--- a/client/src/themes/icons/Block_Black_24dp.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15.52" viewBox="0 0 16 15.52"><defs><style>.a{fill:#005699;}</style></defs><g transform="translate(-2 -2.3)"><path class="a" d="M15.88,11.5a4.08,4.08,0,1,0,4.08,4.08A4.1,4.1,0,0,0,15.88,11.5Zm0,.96a3.282,3.282,0,0,1,1.76.56l-4.48,4a3.309,3.309,0,0,1-.4-1.52A3.22,3.22,0,0,1,15.88,12.46Zm0,6.24a3.091,3.091,0,0,1-2.16-.88l4.56-4.08a2.852,2.852,0,0,1,.64,1.84A3.007,3.007,0,0,1,15.88,18.7Z" transform="translate(-1.96 -1.84)"/><path class="a" d="M12,10.94l.56-.32A6.445,6.445,0,0,0,9.92,9.5a3.626,3.626,0,0,0,2.56-3.52A3.555,3.555,0,0,0,8.88,2.3,3.735,3.735,0,0,0,7.76,9.58,7.327,7.327,0,0,0,2,17.02a.547.547,0,0,0,.56.56.547.547,0,0,0,.56-.56c0-3.6,2.64-6.56,5.92-6.56a5.3,5.3,0,0,1,2.88.88A.971.971,0,0,1,12,10.94ZM8.88,8.7A2.68,2.68,0,1,1,11.6,6.06,2.631,2.631,0,0,1,8.88,8.7Z"/></g></svg>
\ No newline at end of file
diff --git a/client/src/themes/icons/CameraOff_Black_24dp.svg b/client/src/themes/icons/CameraOff_Black_24dp.svg
deleted file mode 100644
index daf0afb..0000000
--- a/client/src/themes/icons/CameraOff_Black_24dp.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12"><defs><style>.a{fill:#005699;}</style></defs><g transform="translate(-4.4 -6)"><g transform="translate(4.4 6)"><path class="a" d="M12.485,13H2.759C1.923,13,1.4,12.5,1.4,11.9V2.1A1.166,1.166,0,0,1,2.655,1H12.38a1.073,1.073,0,0,1,1.15,1.1V3.6l2.2-1.3a1.173,1.173,0,0,1,1.15,0,.993.993,0,0,1,.523.9v7.7a.842.842,0,0,1-.523.9.832.832,0,0,1-1.046-.1l-2.2-1.3v1.5A1.073,1.073,0,0,1,12.485,13ZM2.55,11.9Zm0,0H12.59V9.4c-.1-.2-.1-.3.209-.4a.485.485,0,0,1,.523,0l2.824,1.7V3.4L13.322,5A.485.485,0,0,1,12.8,5a.537.537,0,0,1-.314-.4V2.1H2.759c-.209,0-.209.1-.209.1Z" transform="translate(-1.4 -1)"/></g></g></svg>
\ No newline at end of file
diff --git "a/client/src/themes/icons/Icones_Outline\0501\051.svg" "b/client/src/themes/icons/Icones_Outline\0501\051.svg"
deleted file mode 100644
index d53d60f..0000000
--- "a/client/src/themes/icons/Icones_Outline\0501\051.svg"
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="15.338" height="16" viewBox="0 0 15.338 16"><defs><style>.a{fill:#005699;}</style></defs><g transform="translate(-2.404 -1.956)"><g transform="translate(2.404 1.956)"><g transform="translate(0)"><path class="a" d="M10.417,14.956a6.077,6.077,0,0,1-1.676-.239C4.669,13.6.359,9.049-.44,4.9A5.052,5.052,0,0,1,1.237-.37h0a2.456,2.456,0,0,1,2.075-.639A1.767,1.767,0,0,1,4.51.109a7.417,7.417,0,0,0,.4.8c.718,1.357,1.2,2.395.4,3.273h-.08l-.4.319c-1.118.718-1.118.8-.958,1.038a9.647,9.647,0,0,0,4.39,4.869c.239.16.319.16,1.038-.8.16-.16.239-.319.4-.479l.08-.08c.958-.8,1.916-.16,3.432.718l.559.319a1.849,1.849,0,0,1,.958,1.277,2.7,2.7,0,0,1-.718,2A4.721,4.721,0,0,1,10.417,14.956ZM1.875.508A3.893,3.893,0,0,0,.6,4.659c.718,3.752,4.79,7.983,8.382,9.02a3.72,3.72,0,0,0,4.151-1.038,1.254,1.254,0,0,0,.479-1.118.761.761,0,0,0-.479-.559l-.479-.319c-1.277-.8-1.756-1.038-2.075-.8a1.741,1.741,0,0,1-.319.4c-.639.8-1.357,1.756-2.475,1.118A10.6,10.6,0,0,1,2.913,6.016C2.195,4.9,3.232,4.18,4.19,3.541L4.51,3.3c.239-.319,0-.8-.639-1.916a7.417,7.417,0,0,1-.4-.8A.72.72,0,0,0,2.993.109c-.239-.08-.639.08-1.118.4Z" transform="translate(0.596 1.044)"/></g></g></g></svg>
\ No newline at end of file
diff --git "a/client/src/themes/icons/Icones_Outline\0502\051.svg" "b/client/src/themes/icons/Icones_Outline\0502\051.svg"
deleted file mode 100644
index 4617895..0000000
--- "a/client/src/themes/icons/Icones_Outline\0502\051.svg"
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><defs><style>.a{fill:#005699;}</style></defs><g transform="translate(-2 -2)"><g transform="translate(2 2)"><path class="a" d="M8,0a8,8,0,1,0,8,8A8.024,8.024,0,0,0,8,0ZM8,1.04a6.5,6.5,0,0,1,4.48,1.68L2.72,12.48A6.9,6.9,0,0,1,1.68,5.12,7.081,7.081,0,0,1,8,1.04ZM8,14.96a7.274,7.274,0,0,1-4.56-1.68l9.84-9.76a6.9,6.9,0,0,1,1.04,7.36A7.032,7.032,0,0,1,8,14.96Z"/></g></g></svg>
\ No newline at end of file
diff --git a/client/src/themes/icons/Icones_Outline.svg b/client/src/themes/icons/Icones_Outline.svg
deleted file mode 100644
index b9c69ca..0000000
--- a/client/src/themes/icons/Icones_Outline.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="16" height="14.554" viewBox="0 0 16 14.554"><defs><style>.a{fill:#005699;}</style></defs><g transform="translate(-3.7 -4.4)"><g transform="translate(3.7 4.4)"><g transform="translate(0 0)"><path class="a" d="M5.134,14.954a.869.869,0,0,1-.482-.1A1.252,1.252,0,0,1,3.881,13.7V11.773H3.3a2.614,2.614,0,0,1-2.6-2.7V3.1A2.675,2.675,0,0,1,3.3.4H14a2.635,2.635,0,0,1,2.7,2.7v5.88a2.694,2.694,0,0,1-2.7,2.7H9.086L6,14.569A1.222,1.222,0,0,1,5.134,14.954ZM3.3,1.653A1.547,1.547,0,0,0,1.76,3.292v5.88A1.585,1.585,0,0,0,3.3,10.713H5.037V13.8a.094.094,0,0,0,.1.1h.193L8.7,10.617h5.4A1.585,1.585,0,0,0,15.64,9.075V3.1A1.585,1.585,0,0,0,14.1,1.557H3.3Z" transform="translate(-0.7 -0.4)"/></g></g></g></svg>
\ No newline at end of file
diff --git a/client/src/themes/icons/Profil_Black_24dp.svg b/client/src/themes/icons/Profil_Black_24dp.svg
deleted file mode 100644
index 49b9807..0000000
--- a/client/src/themes/icons/Profil_Black_24dp.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="14.647" height="16" viewBox="0 0 14.647 16"><defs><style>.a{fill:#005699;}</style></defs><path class="a" d="M11.258,9.562A3.774,3.774,0,0,0,13.965,5.9,3.79,3.79,0,0,0,10.144,2,3.871,3.871,0,0,0,8.95,9.562,7.806,7.806,0,0,0,2.9,17.443a.557.557,0,1,0,1.114,0c0-3.821,2.786-6.925,6.209-6.925s6.209,3.1,6.209,6.925a.557.557,0,0,0,1.114,0C17.388,13.463,14.681,10.119,11.258,9.562ZM7.278,5.9a2.866,2.866,0,1,1,5.731,0,2.787,2.787,0,0,1-2.866,2.786A2.838,2.838,0,0,1,7.278,5.9Z" transform="translate(-2.9 -2)"/></svg>
\ No newline at end of file
diff --git a/client/src/themes/icons/noun-plus-2310784.svg b/client/src/themes/icons/noun-plus-2310784.svg
deleted file mode 100644
index 73f9260..0000000
--- a/client/src/themes/icons/noun-plus-2310784.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="23.335" height="23.335" viewBox="0 0 23.335 23.335"><defs><style>.a{fill:#005699;stroke:#fff;stroke-width:0.5px;}</style></defs><g transform="translate(685.089 -711.252) rotate(45)"><path class="a" d="M35,979.362a1.044,1.044,0,0,0-1.043,1.044v5.913H28.043a1.044,1.044,0,0,0,0,2.087h5.913v5.913a1.043,1.043,0,0,0,2.087,0v-5.913h5.913a1.044,1.044,0,0,0,0-2.087H36.043v-5.913A1.044,1.044,0,0,0,35,979.362Z"/></g></svg>
\ No newline at end of file
