diff --git a/app/models/person.rb b/app/models/person.rb
index ec2c525f6e0f24fe4b855fe1100d63e3653de86c..c56adb37452027ec9ddbd1f16ece80ab08f8f52f 100644
--- a/app/models/person.rb
+++ b/app/models/person.rb
@@ -225,7 +225,8 @@ class Person < ActiveRecord::Base
       :name => self.name,
       :avatar => self.profile.image_url(:thumb_small),
       :handle => self.diaspora_handle,
-      :url => "/people/#{self.id}"
+      :url => "/people/#{self.id}",
+      :hashtags => self.profile.tags.map{|t| "##{t.name}"}
     }
   end
 
diff --git a/app/views/comments/_comment.html.haml b/app/views/comments/_comment.html.haml
index 35d07f4ac52fe96dccf597e41eba31749404804d..0809a407b0c9fdb3c9bda3e44a35b0e0cca14926 100644
--- a/app/views/comments/_comment.html.haml
+++ b/app/views/comments/_comment.html.haml
@@ -9,7 +9,7 @@
   = person_image_link(comment.author)
   .content
     %span.from
-      = person_link(comment.author, :class => "author")
+      = person_link(comment.author, :class => "hovercardable")
 
     %span{:class => direction_for(comment.text)}
       = markdownify(comment.text, :youtube_maps => comment.youtube_titles)
diff --git a/app/views/layouts/_header.html.haml b/app/views/layouts/_header.html.haml
index 359b02e6014f01b7517b06a9234cf810dcc52a0a..f5c0d084d7211ac52859d744b0c370d7aec01186 100644
--- a/app/views/layouts/_header.html.haml
+++ b/app/views/layouts/_header.html.haml
@@ -52,15 +52,16 @@
           .ajax_loader
             = image_tag("ajax-loader.gif")
 
-      #hovercard
-        %img.avatar
-        %h4
-          %a.person
-        #hovercard_dropdown_container
+      #hovercard_container
+        #hovercard
+          %img.avatar
+          %h4
+            %a.person
+          #hovercard_dropdown_container
 
-        .hovercard_footer
-          .footer_container
-            Message
+          .hovercard_footer
+            .footer_container
+              .hashtags
 
     %ul#user_menu.dropdown
       %li
diff --git a/app/views/people/_index.html.haml b/app/views/people/_index.html.haml
index d7f36f7af316f27321553cd09cb69c7a9dfbd60e..72df7e017fcc5596ad9ac723be3b29617fd6799b 100644
--- a/app/views/people/_index.html.haml
+++ b/app/views/people/_index.html.haml
@@ -5,13 +5,9 @@
       - if current_user
         - contact = current_user.contacts.find_by_person_id(person.id)
         - contact ||= Contact.new(:person => person)
-        - unless person == current_user.person
-          .right
-            = render 'aspect_memberships/aspect_dropdown', :contact => contact, :person => person, :hang => 'left'
 
       .content
         %span.from
-          =person_link(person)
-        .info
-          = person.profile.format_tags(person.profile.tag_string)
+          =person_link(person, :class => "hovercardable")
+
   = will_paginate people, :params => {:controller => 'people', :action => 'tag_index'}
diff --git a/app/views/shared/_stream_element.html.haml b/app/views/shared/_stream_element.html.haml
index e65d3e039e83192abe57d8be7c5ab71a63234201..bc075a6c94dfdbcd846945cd62ce7f00572cda92 100644
--- a/app/views/shared/_stream_element.html.haml
+++ b/app/views/shared/_stream_element.html.haml
@@ -18,7 +18,7 @@
     .content
       %div.post_initial_info
         %span.from
-          = person_link(post.author, :class => 'author')
+          = person_link(post.author, :class => 'hovercardable')
           %time.time.timeago{:datetime => post.created_at, :integer => time_for_sort(post).to_i}
         %span.details
           \-
diff --git a/config/assets.yml b/config/assets.yml
index bf4808b7582553d474e3e60f90d17676deeb3234..a3a2b3037611abcd2e2bb13def42802015e0773b 100644
--- a/config/assets.yml
+++ b/config/assets.yml
@@ -36,6 +36,7 @@ javascripts:
     - public/javascripts/widgets/flashes.js
     - public/javascripts/widgets/post.js
     - public/javascripts/widgets/hovercard.js
+    - public/javascripts/widgets/notifications-badge.js
     - public/javascripts/view.js
     - public/javascripts/stream.js
     - public/javascripts/content-updater.js
diff --git a/public/javascripts/widgets/hovercard.js b/public/javascripts/widgets/hovercard.js
index 5ed15ed77755d6853e6f1d6c8559df1f3c939105..ab171a275a7981e819d35e56e37cd42ba446bb75 100644
--- a/public/javascripts/widgets/hovercard.js
+++ b/public/javascripts/widgets/hovercard.js
@@ -7,20 +7,22 @@
     this.start = function() {
       self.personCache = new this.Cache();
       self.dropdownCache = new this.Cache();
-  
+ 
+      var card = $("#hovercard");
       self.hoverCard = {
-        tip: $("#hovercard"),
+        tip: $("#hovercard_container"),
         dropdownContainer: $("#hovercard_dropdown_container"),
         offset: {
-          left: 0,
-          top: 18
+          left: -10,
+          top: 13
         },
-        personLink: $("#hovercard").find("a.person"),
-        avatar: $("#hovercard").find(".avatar"),
-        dropdown: $("#hovercard").find(".dropdown_list")
+        personLink: card.find("a.person"),
+        avatar: card.find(".avatar"),
+        dropdown: card.find(".dropdown_list"),
+        hashtags: card.find(".hashtags"),
       };
 
-      $(document.body).delegate("a.author:not(.self)", "hover", self.handleHoverEvent);
+      $(document.body).delegate("a.hovercardable:not(.self)", "hover", self.handleHoverEvent);
       self.hoverCard.tip.hover(self.hoverCardHover, self.clearTimeout);
 
       Diaspora.widgets.subscribe("aspectDropdown/updated aspectDropdown/blurred", function(evt, personId, dropdownHtml) {
@@ -67,6 +69,14 @@
       self.hoverCard.personLink.text(person.name);
       self.hoverCard.dropdown.attr("data-person-id", person.id);
 
+      $.each(person.hashtags, function(index, hashtag) {
+        self.hoverCard.hashtags.append(
+          $("<a/>", {
+            href: "/tags/" + hashtag.substring(1)
+          }).text(hashtag)
+        );
+      });
+
       self.dropdownCache.get(self.target.attr("href") + "/aspect_membership_button", function(dropdown) {
         self.hoverCard.dropdownContainer.html(dropdown);
         self.hoverCard.tip.fadeIn(140);
diff --git a/public/stylesheets/sass/application.sass b/public/stylesheets/sass/application.sass
index beb82a38fe7a02d693f4e3ce3301a1289bd44db5..db819df671516e5bdbdd162275e1eb1ce8ff94d5 100644
--- a/public/stylesheets/sass/application.sass
+++ b/public/stylesheets/sass/application.sass
@@ -3066,14 +3066,12 @@ ul.left_nav
   :margin
     :top 30px
 
-.tags_people
-  .dropdown
-    :display none
-
 #hovercard
   @include border-radius(2px)
   @include box-shadow(0,0,5px,#666)
 
+  :position relative
+
   .avatar
     :position relative
     :height 70px
@@ -3081,21 +3079,16 @@ ul.left_nav
     :margin
       :right 10px
 
-  :position absolute
-  :display none
   :background
     :color $background
 
   :padding 5px
-    :bottom 28px
+    :bottom 55px
 
   :border 1px solid #999
 
   :width 220px
 
-  :z
-    :index 10
-
   .hovercard_footer
     :position absolute
     :bottom 0
@@ -3104,6 +3097,9 @@ ul.left_nav
       :color #eee
     :width 100%
 
+    :height 20px
+    :min-height 20px
+
     :font
       :size smaller
 
@@ -3112,3 +3108,20 @@ ul.left_nav
 
     .footer_container
       :padding 2px 5px
+
+      .hashtags
+        :overflow hidden
+        :white-space nowrap
+        :text-overflow ellipsis
+
+      a
+        :color #999
+        :margin
+          :right 4px
+
+#hovercard_container
+  :padding 10px
+    :top 5px
+  :position absolute
+  :display none
+  :z-index 10