SEO and metadata

Docs Platform

SEO and metadata

Public identity strings, structured data, sitemaps, and per-page metadata.

Public Identity

Search and sharing metadata use four distinct names:

Role Canonical name Usage
Person Lucian Bu Profile page, Person structured data, personal authorship
Personal alias Bunizao alternateName, account handles, historical credits
Pen name Murray Blog byline and the canonical Person’s alternateName
Website buxx.me WebSite.name, og:site_name, non-blog title suffixes, oEmbed provider
Blog publication 無人之境 Blog title suffixes, og:site_name, BlogPosting.publisher

Bunizao is not the website name. Bunizao's Website and Lucian's Website are intentionally not used because possessive template names blur the person, site, and publication entities.

The shared identity source is src/data/site.ts. src/lib/seo.ts derives structured data and the standard non-blog title suffix from it.

Titles

  • The home page leads with the person: Lucian Bu — Student, Developer & Blogger.
  • Non-blog sections use <topic> — buxx.me.
  • The Blog index is 無人之境.
  • Blog articles use <article title> — 無人之境.
  • Google may still rewrite a title when it believes another form better matches a query. Source titles must remain stable and should not imitate a rewritten search result.

Structured Data

The home page emits two linked entities:

  • WebSite named buxx.me, published by the canonical Person.
  • ProfilePage named Lucian Bu, whose mainEntity is that Person and whose aliases include Bunizao.

Blog article pages emit BlogPosting. The article author is a Person; the publisher is the 無人之境 publication with the thinking-woman mark as its logo. When Ghost supplies the Murray byline, the author still uses the canonical https://buxx.me/#person entity, with Lucian Bu as its name and Murray as its alternateName. Structured data supplements visible title, canonical, Open Graph, and favicon metadata rather than replacing them.

Indexing

  • Public page URLs are extensionless and have no trailing slash. / is the only natural exception. Alternate slash forms receive a permanent 308, while canonical tags, sitemaps, feeds, and internal links emit the slashless form.
  • /mood is indexable.
  • /mood/[id] emits noindex, follow so crawlers can discover the directive without the detail archive crowding out editorial results.
  • Blog indexes, tags, and articles remain indexable and canonical under https://buxx.me/blog.
  • Sitemap priority is not used as a result-balancing mechanism.

For direct-link-only articles, see Unlisted posts. That page documents the exact Ghost marker and the corresponding sitemap, feed, search, Markdown, and crawler behavior.

Search Favicons

The Blog keeps its thinking-woman favicon in browser chrome. Search engines normally choose one favicon per hostname, so /blog/* cannot reliably show a different Google result favicon from other buxx.me paths. The Blog mark is also supplied as the BlogPosting.publisher.logo, which is the standard place to express publication identity for article metadata.