diff --git a/aleksis/core/frontend/components/person/PersonOverview.vue b/aleksis/core/frontend/components/person/PersonOverview.vue
index 978b6689a2e6b777e1e05fbb1859b8651eb3782e..5171a22f0ed594bb849d82d8bab671db7e1207ec 100644
--- a/aleksis/core/frontend/components/person/PersonOverview.vue
+++ b/aleksis/core/frontend/components/person/PersonOverview.vue
@@ -1,6 +1,9 @@
 <template>
-  <div>
-    <template v-if="$apollo.queries.person.loading">
+  <object-overview
+      :query="query"
+      title-attr="fullName"
+  >
+    <template #loading>
       <v-skeleton-loader type="article" />
 
       <v-row>
@@ -9,7 +12,7 @@
         </v-col>
       </v-row>
     </template>
-    <template v-else-if="person">
+    <template v-slot="person">
       <detail-view>
         <template #avatarContent>
           <person-avatar-clickbox :id="id" />
@@ -189,12 +192,13 @@
         </v-row>
       </detail-view>
     </template>
-  </div>
+  </object-overview>
 </template>
 
 <script>
 import AdditionalImage from "./AdditionalImage.vue";
 import GroupCollection from "../group/GroupCollection.vue";
+import ObjectOverview from "../generic/ObjectOverview.vue";
 import PersonActions from "./PersonActions.vue";
 import PersonAvatarClickbox from "./PersonAvatarClickbox.vue";
 import PersonCollection from "./PersonCollection.vue";
@@ -206,27 +210,15 @@ export default {
   components: {
     AdditionalImage,
     GroupCollection,
+    ObjectOverview,
     PersonActions,
     PersonAvatarClickbox,
     PersonCollection,
   },
-  apollo: {
-    person: {
+  data() {
+    return {
       query: gqlPersonOverview,
-      variables() {
-        if (this.$route.params.id) {
-          return {
-            id: this.$route.params.id,
-          };
-        }
-        return {};
-      },
-      result({ data }) {
-        if (data && data.person) {
-          this.$root.$setPageTitle(data.person.fullName);
-        }
-      },
-    },
+    }
   },
   props: {
     id: {
diff --git a/aleksis/core/frontend/components/person/personOverview.graphql b/aleksis/core/frontend/components/person/personOverview.graphql
index cbf77ef19e48346007d7ebab43f6325a6ded3d3f..8173f6a7d7d74842a267c4d5c0a47d7d3ed97634 100644
--- a/aleksis/core/frontend/components/person/personOverview.graphql
+++ b/aleksis/core/frontend/components/person/personOverview.graphql
@@ -1,5 +1,5 @@
 query person($id: ID) {
-  person: personByIdOrMe(id: $id) {
+  object: personByIdOrMe(id: $id) {
     id
     username
     firstName