diff --git a/lib/bones73k/util/list.ex b/lib/bones73k/util/list.ex
deleted file mode 100644
index 311c0442..00000000
--- a/lib/bones73k/util/list.ex
+++ /dev/null
@@ -1,4 +0,0 @@
-defmodule Bones73k.Util.List do
-  def prepend_if(list, condition, item), do: (!!condition && [item | list]) || list
-  def append_if(list, condition, item), do: (!!condition && list ++ [item]) || list
-end
diff --git a/lib/bones73k_web/templates/layout/_navbar.html.eex b/lib/bones73k_web/templates/layout/_navbar.html.eex
index e1362075..ade773de 100644
--- a/lib/bones73k_web/templates/layout/_navbar.html.eex
+++ b/lib/bones73k_web/templates/layout/_navbar.html.eex
@@ -2,7 +2,7 @@
   <div class="container">
 
     <%= link to: Routes.page_path(@conn, :index), class: "navbar-brand" do %>
-      <%= icon_div @conn, "fas-skull-crossbones", class: "icon baseline" %>
+      <%= icon_div @conn, "fas-skull-crossbones", [class: "icon baseline"] %>
       Bones73k
     <% end %>
 
@@ -12,29 +12,45 @@
 
     <div class="collapse navbar-collapse" id="navbarSupportedContent" phx-update="ignore">
       <ul class="navbar-nav me-auto mb-2 mb-lg-0">
+
         <li class="nav-item">
+          <%= link "Properties", nav_link_opts(@conn, to: Routes.property_index_path(@conn, :index), class: "nav-link") %>
+        </li>
+
+        <%# ACTIVE page link example %>
+        <%# <li class="nav-item">
           <a class="nav-link active" aria-current="page" href="#">Home</a>
-        </li>
-        <li class="nav-item">
-          <a class="nav-link" href="#">Link</a>
-        </li>
+        </li> %>
+
+        <%# DISABLED page link example %>
+        <%# <li class="nav-item">
+          <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
+        </li> %>
+
+        <%= if function_exported?(Routes, :live_dashboard_path, 2) do %>
+          <li class="nav-item">
+          <%= link "LiveDashboard", nav_link_opts(@conn, to: Routes.live_dashboard_path(@conn, :home), class: "nav-link") %>
+          </li>
+        <% end %>
+
         <li class="nav-item dropdown" phx-update="ignore">
-          <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" data-bs-toggle="dropdown" aria-expanded="false">Dropdown</a>
-          <ul class="dropdown-menu" aria-labelledby="navbarDropdown">
+          <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownExample" data-bs-toggle="dropdown" aria-expanded="false">Dropdown</a>
+          <ul class="dropdown-menu" aria-labelledby="navbarDropdownExample">
             <li><a class="dropdown-item" href="#">Action</a></li>
             <li><a class="dropdown-item" href="#">Another action</a></li>
             <li><hr class="dropdown-divider"></li>
             <li><a class="dropdown-item" href="#">Something else here</a></li>
           </ul>
         </li>
-        <li class="nav-item">
-          <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
-        </li>
+
       </ul>
-      <form class="d-flex">
-        <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
-        <button class="btn btn-outline-success" type="submit">Search</button>
-      </form>
+
+      <ul class="navbar-nav">
+
+        <%= render "navbar/_user_menu.html", assigns %>
+
+      </ul>
+
     </div>
   </div>
 </nav>
diff --git a/lib/bones73k_web/templates/layout/_user_menu.html.eex b/lib/bones73k_web/templates/layout/_user_menu.html.eex
deleted file mode 100644
index f281cfc6..00000000
--- a/lib/bones73k_web/templates/layout/_user_menu.html.eex
+++ /dev/null
@@ -1,10 +0,0 @@
-<ul>
-<%= if @current_user do %>
-  <li><%= @current_user.email %></li>
-  <li><%= link "Settings", to: Routes.user_settings_path(@conn, :edit) %></li>
-  <li><%= link "Log out", to: Routes.user_session_path(@conn, :delete), method: :delete %></li>
-<% else %>
-  <li><%= link "Register", to: Routes.user_registration_path(@conn, :new) %></li>
-  <li><%= link "Log in", to: Routes.user_session_path(@conn, :new) %></li>
-<% end %>
-</ul>
diff --git a/lib/bones73k_web/templates/layout/navbar/_user_menu.html.eex b/lib/bones73k_web/templates/layout/navbar/_user_menu.html.eex
new file mode 100644
index 00000000..a6491042
--- /dev/null
+++ b/lib/bones73k_web/templates/layout/navbar/_user_menu.html.eex
@@ -0,0 +1,24 @@
+<li class="nav-item dropdown" phx-update="ignore">
+
+  <a href="#" class="nav-link dropdown-toggle" id="navbarDropdownUserMenu" data-bs-toggle="dropdown" aria-expanded="false">
+    <%= @current_user && "Account" || "Welcome" %>
+  </a>
+
+  <ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdownUserMenu">
+
+    <%= if @current_user do %>
+
+      <li><%= content_tag :span, @current_user.email, class: "dropdown-item-text" %></li>
+      <li><hr class="dropdown-divider"></li>
+      <li><%= link "Settings", nav_link_opts(@conn, to: Routes.user_settings_path(@conn, :edit), class: "dropdown-item") %></li>
+      <li><%= link "Log out", nav_link_opts(@conn, to: Routes.user_session_path(@conn, :delete), method: :delete, class: "dropdown-item") %></li>
+
+    <% else %>
+
+      <li><%= link "Register", nav_link_opts(@conn, to: Routes.user_registration_path(@conn, :new), class: "dropdown-item") %></li>
+      <li><%= link "Log in", nav_link_opts(@conn, to: Routes.user_session_path(@conn, :new), class: "dropdown-item") %></li>
+
+    <% end %>
+  </ul>
+
+</li>
diff --git a/lib/bones73k_web/templates/layout/root.html.leex b/lib/bones73k_web/templates/layout/root.html.leex
index 42e29631..4cfa7310 100644
--- a/lib/bones73k_web/templates/layout/root.html.leex
+++ b/lib/bones73k_web/templates/layout/root.html.leex
@@ -13,18 +13,6 @@
 
     <%= render "_navbar.html", assigns %>
 
-    <%# <section class="container">
-    </section> %>
-
-        <ul>
-          <li><%= link "Properties", to: Routes.property_index_path(@conn, :index) %></li>
-          <%= if function_exported?(Routes, :live_dashboard_path, 2) do %>
-            <li><%= link "LiveDashboard", to: Routes.live_dashboard_path(@conn, :home) %></li>
-          <% end %>
-        </ul>
-        <%= render "_user_menu.html", assigns %>
-
-
     <%= @inner_content %>
 
   </body>
diff --git a/lib/bones73k_web/views/icon_helper.ex b/lib/bones73k_web/views/icon_helper.ex
deleted file mode 100644
index ed5f7c1d..00000000
--- a/lib/bones73k_web/views/icon_helper.ex
+++ /dev/null
@@ -1,35 +0,0 @@
-defmodule Bones73kWeb.IconHelpers do
-  @moduledoc """
-  Generate SVG sprite use tags for SVG icons
-  """
-
-  use Phoenix.HTML
-  import Bones73k.Util.List
-  alias Bones73kWeb.Router.Helpers, as: Routes
-
-  def icon_div(conn, name, div_opts \\ [], svg_opts \\ []) do
-    content_tag(:div, tag_opts(name, div_opts)) do
-      icon_svg(conn, name, svg_opts)
-    end
-  end
-
-  def icon_svg(conn, name, opts \\ []) do
-    content_tag(:svg, tag_opts(name, opts)) do
-      tag(:use, "xlink:href": Routes.static_path(conn, "/images/icons.svg#" <> name))
-    end
-  end
-
-  defp tag_opts(name, opts) do
-    classes = "#{Keyword.get(opts, :class, "")} #{name}" |> String.trim_leading()
-    styles = Keyword.get(opts, :style)
-    width = Keyword.get(opts, :width)
-    height = Keyword.get(opts, :height)
-    id = Keyword.get(opts, :id)
-
-    [class: classes]
-    |> prepend_if(styles, {:style, styles})
-    |> prepend_if(width, {:style, width})
-    |> prepend_if(height, {:style, height})
-    |> prepend_if(id, {:id, id})
-  end
-end
diff --git a/lib/bones73k_web/views/icon_helpers.ex b/lib/bones73k_web/views/icon_helpers.ex
index ed5f7c1d..7a186315 100644
--- a/lib/bones73k_web/views/icon_helpers.ex
+++ b/lib/bones73k_web/views/icon_helpers.ex
@@ -4,7 +4,6 @@ defmodule Bones73kWeb.IconHelpers do
   """
 
   use Phoenix.HTML
-  import Bones73k.Util.List
   alias Bones73kWeb.Router.Helpers, as: Routes
 
   def icon_div(conn, name, div_opts \\ [], svg_opts \\ []) do
@@ -15,21 +14,11 @@ defmodule Bones73kWeb.IconHelpers do
 
   def icon_svg(conn, name, opts \\ []) do
     content_tag(:svg, tag_opts(name, opts)) do
-      tag(:use, "xlink:href": Routes.static_path(conn, "/images/icons.svg#" <> name))
+      tag(:use, "xlink:href": Routes.static_path(conn, "/images/icons.svg##{name}"))
     end
   end
 
   defp tag_opts(name, opts) do
-    classes = "#{Keyword.get(opts, :class, "")} #{name}" |> String.trim_leading()
-    styles = Keyword.get(opts, :style)
-    width = Keyword.get(opts, :width)
-    height = Keyword.get(opts, :height)
-    id = Keyword.get(opts, :id)
-
-    [class: classes]
-    |> prepend_if(styles, {:style, styles})
-    |> prepend_if(width, {:style, width})
-    |> prepend_if(height, {:style, height})
-    |> prepend_if(id, {:id, id})
+    Keyword.update(opts, :class, name, fn c -> "#{c} #{name}" end)
   end
 end
diff --git a/lib/bones73k_web/views/layout_view.ex b/lib/bones73k_web/views/layout_view.ex
index a0e3a46d..2cf21141 100644
--- a/lib/bones73k_web/views/layout_view.ex
+++ b/lib/bones73k_web/views/layout_view.ex
@@ -1,3 +1,10 @@
 defmodule Bones73kWeb.LayoutView do
   use Bones73kWeb, :view
+
+  def nav_link_opts(conn, opts) do
+    case Keyword.get(opts, :to) == Phoenix.Controller.current_path(conn) do
+      false -> opts
+      true -> Keyword.update(opts, :class, "active", fn c -> "#{c} active" end)
+    end
+  end
 end