diff --git a/dist/lib/sib-core b/dist/lib/sib-core
index cbba4db47150bcac8e86a364e2a4b20ad27fb387..444d258357cc525300c291e45f7be7f920f972e1 160000
--- a/dist/lib/sib-core
+++ b/dist/lib/sib-core
@@ -1 +1 @@
-Subproject commit cbba4db47150bcac8e86a364e2a4b20ad27fb387
+Subproject commit 444d258357cc525300c291e45f7be7f920f972e1
diff --git a/dist/lib/sib-router b/dist/lib/sib-router
index 488ca64e9aafd20bbdb15c2d087f4771d135d681..6109962852d523b23d47fb344083e77917ec1a9c 160000
--- a/dist/lib/sib-router
+++ b/dist/lib/sib-router
@@ -1 +1 @@
-Subproject commit 488ca64e9aafd20bbdb15c2d087f4771d135d681
+Subproject commit 6109962852d523b23d47fb344083e77917ec1a9c
diff --git a/src/html/channel.html b/src/html/channel.html
index 850f2ca233b9edade6c4fec5130f8afc025a46da..5434e536be8285e9c18f371700c0a52e816a80c1 100644
--- a/src/html/channel.html
+++ b/src/html/channel.html
@@ -1,22 +1,24 @@
 <script>
-  class LDPDisplayMember extends LDPWidget {
-    get template() {
-      return `
-        <div name="${this.name}">
-          <img src="${this.value.avatar}"/>
-          <span>${this.value.firstname} ${this.value.lastname}</span>
-        </div>
-      `;
-    }
+  document.addEventListener("WebComponentsReady", function(event) { 
+    class LDPDisplayMember extends SIBWidget {
+      get template() {
+        return `
+          <div name="${this.name}">
+            <img src="${this.value.avatar}"/>
+            <span>${this.value.firstname} ${this.value.lastname}</span>
+          </div>
+        `;
+      }
 
-    render() {
-      store.get(this.value).then( (value) => {
-        this._value = value;
-        this.innerHTML = this.template;
-      });
+      render() {
+        store.get(this.value).then( (value) => {
+          this._value = value;
+          this.innerHTML = this.template;
+        });
+      }
     }
-  }
-  customElements.define("ldp-display-member", LDPDisplayMember);
+    customElements.define("ldp-display-member", LDPDisplayMember);
+  });
 </script>
 
 <div id="channel" class="view-with-vertical-menu" style="display: none">
diff --git a/src/html/edit-profile.html b/src/html/edit-profile.html
index f2dfa90876cfec7bc7d054c263f9fddbb04b0c0e..baf28d011716205515b55e1f5e49a50268f00808 100644
--- a/src/html/edit-profile.html
+++ b/src/html/edit-profile.html
@@ -19,7 +19,7 @@
 
 <div id="edit-profile" style="display: none">
   <label for="avatar-input">
-    <img id="avatar-preview" src="http://cdn.hd-app.local/members/alexandre-bourlier.jpg" style="width: 100%;"/>
+    <img id="avatar-preview" src="http://cdn.local/hdapp/members/alexandre-bourlier.jpg" style="width: 100%;"/>
   </label>
   <input type="file" id="avatar-input" name="avatar" value="http://cdn.hd-app.local/members/alexandre-bourlier.jpg" />`;
 
diff --git a/src/html/members.html b/src/html/members.html
index 8ecfdbc4bc9cd1fb68a4d40080023269e0bfb9be..8a39341acd357c1cf574d8ade303ac9e41d9d7d8 100644
--- a/src/html/members.html
+++ b/src/html/members.html
@@ -1,23 +1,43 @@
 <script>
-  class LDPDisplayCell extends SIBDisplayLookupList {
-    get template() {
-      return `<div name="${this.name}">${this.value.city} - ${this.value.country}</div>`;
+  document.addEventListener("WebComponentsReady", function(event) { 
+    class UserInfo extends SIBDisplayLookupList {
+      get parentElement() {return "div"}
+      getTemplate(value, index) {
+        var firstname, lastname;
+
+        if(typeof value == "object")
+          if(value.first_name) {
+            firstname = value.first_name;
+            lastname  = value.last_name;
+          }
+          else {
+            store.get(value).then(resource => {
+                this.value.push(resource);
+                this.render();
+            });
+            if(Array.isArray(this.value))this.value.splice(this.value.indexOf(value), 1);
+            else this.value = [];
+            return '';
+          }
+        return `<span id="${firstname}-${lastname}">${firstname} ${lastname}</span>`;
+      }
     }
-  }
-  customElements.define("ldp-display-cell", LDPDisplayCell);
+    customElements.define('hdapp-userinfo', UserInfo);
+  });
+
+//  class LDPDisplayCell extends SIBDisplayLookupList {
+//    get template() {
+//      return `<div name="${this.name}">${this.value.city} - ${this.value.country}</div>`;
+//    }
+//  }
+//  customElements.define("ldp-display-cell", LDPDisplayCell);
 </script>
 
 <div id="members" class="view" style="display: none">
   <sib-display 
     id="profiles-list" 
     data-src="<?php echo $sdn; ?>/members/" 
-    set-name="firstname, name-separator, lastname"
-    value-name-separator="&nbsp;"
-    value-city-separator=",&nbsp;"
-    data-fields="avatar, name, cell"
-    widget-avatar="sib-display-img"
-    widget-cell="ldp-display-cell"
-    search-fields="firstname, lastname"
-    next="member"
+    data-fields="user"
+    widget-user="hdapp-userinfo"
   ></sib-display>
 </div>
diff --git a/src/html/projects.html b/src/html/projects.html
index ff8a1c4c62b60252cb67365a2b6f84a6ef3dffc4..28203c5bb785336476158d5ecb622df010b81b91 100644
--- a/src/html/projects.html
+++ b/src/html/projects.html
@@ -1,17 +1,19 @@
 <script>
-  class LDPDisplayClient extends LDPWidget {
-    get template() {
-      return `<img name="${this.name}" src="${this.value.logo}"/>`;
-    }
+  document.addEventListener("WebComponentsReady", function(event) { 
+    class LDPDisplayClient extends SIBWidget {
+      get template() {
+        return `<img name="${this.name}" src="${this.value.logo}"/>`;
+      }
 
-    render() {
-      store.get(this.value).then( (value) => {
-        this._value = value;
-        this.innerHTML = this.template;
-      });
+      render() {
+        store.get(this.value).then( (value) => {
+          this._value = value;
+          this.innerHTML = this.template;
+        });
+      }
     }
-  }
-  customElements.define("ldp-display-client", LDPDisplayClient);
+    customElements.define("ldp-display-client", LDPDisplayClient);
+  });
 </script>
 
 <div id="projects" style="display: none">