X Enterprises
nuxt-x-affiliate

Author Box

Author bio box — drives E-E-A-T signal with name, role, bio, credentials, avatar, social links, and optional published/updated dates.

Author Box

The XAFAuthorBox component renders the author bio block. Google's Helpful Content system weights real author identity heavily (E-E-A-T: Experience, Expertise, Authoritativeness, Trustworthiness) — a real byline with credentials and a bio is the single biggest E-E-A-T signal you can ship.

Component

<XAFAuthorBox />

<XAFAuthorBox
  variant="card"
  :published-at="review.publishedAt"
  :updated-at="review.updatedAt"
/>

<!-- Or fully override per-page: -->
<XAFAuthorBox
  name="Jane Reviewer"
  role="Senior Kitchen Gear Editor"
  bio="I've been reviewing kitchen equipment for home cooks for 8 years."
  image="/team/jane.jpg"
  :credentials="['CNC-certified', '8 years testing kitchen gear']"
  :social="{ twitter: 'https://twitter.com/jane', website: 'https://janereviews.com' }"
  variant="inline"
/>

Props

PropTypeDefaultDescription
namestringxAffiliate.author.nameAuthor name.
rolestringxAffiliate.author.roleOne-line role/title.
biostringxAffiliate.author.bio1–3 sentence bio.
imagestringxAffiliate.author.imageAvatar URL (square, 200×200+).
credentialsstring[]xAffiliate.author.credentialsTrust badges (e.g. ['CNC-certified', '8 years reviewing']).
showLabelbooleantrueShow "Reviewed by" prefix.
variant'card' | 'inline' | 'compact''card'Layout: card (boxed), inline (horizontal), compact (avatar + name only).
publishedAtstring (ISO)First-published date — shown in card variant only.
updatedAtstring (ISO)Last-updated date. Shown only when it differs from publishedAt.

Site-wide config

Set once in app.config.ts and every <XAFAuthorBox> on the site inherits it:

export default defineAppConfig({
  xAffiliate: {
    author: {
      name: 'Jane Reviewer',
      role: 'Senior Kitchen Gear Editor',
      bio: '8 years reviewing kitchen equipment for home cooks.',
      image: '/team/jane.jpg',
      credentials: ['CNC-certified', '8 years testing kitchen gear'],
      social: {
        twitter: 'https://twitter.com/jane',
        linkedin: 'https://linkedin.com/in/jane',
        website: 'https://janereviews.com',
        email: 'jane@bestkitchengear.com',
      },
    },
  },
})

E-E-A-T impact

Google's 2024 Helpful Content update weighs author identity hard. The single biggest E-E-A-T action you can take on a niche review site is:

  1. Put a real person's name on every review (not "Editorial Team").
  2. Show their credentials, photo, and bio.
  3. Link to their social profiles and personal site.
  4. Show "Published / Updated" dates.

<XAFAuthorBox> does all four.

Pair with usePersonSchema()

For maximum SERP impact, also call usePersonSchema() in your review page's <script setup>:

usePersonSchema({
  knowsAbout: ['wireless keyboards', 'mechanical switches', 'office peripherals'],
})

This emits Schema.org Person JSON-LD with knowsAbout properties — Google uses these to associate the author with topical expertise.


AI Context

component: XAFAuthorBox
package: "@xenterprises/nuxt-x-affiliate"
use-when: >
  At the top of every review or article page. Drives Google E-E-A-T
  (Experience, Expertise, Authoritativeness, Trustworthiness) signal.
  Set site-wide defaults under xAffiliate.author in app.config.ts
  (name, role, bio, image, credentials, social) and override per-page
  when needed. Three variants: card (boxed, full bio), inline
  (horizontal), compact (avatar + name). Pair with usePersonSchema()
  for full Schema.org Person markup with knowsAbout topics.
Copyright © 2026