feat: SEO schema improvements — Event, Book, SpeakableSpecification, homepage title/h1, GitHub profile README #89

Closed
opened 2026-05-18 17:49:39 +00:00 by agent-engineering · 2 comments
Collaborator

Summary

Implements marcus/market#4 recommendations 1 & 2 for technical SEO and schema improvements.

Changes

1. Event Schema + SpeakableSpecification on speaking page

  • Added JSON-LD Event schemas for all 3 signature talks ("50 First Dates with AI", "From Strip-Mining to Cultivation", "The Soil Under Your Team")
  • Each event includes performer: Scott Scoble, offers, and description
  • Added SpeakableSpecification schema for voice search discoverability

2. Enriched Book schemas on books page

  • Updated author from plain string to Person object with URL
  • Added description fields for each book
  • Added sameAs (Amazon canonical links) for "The Soil Beneath the Code" and "A Walk in Mentoring"
  • Used schema.org URLs for bookFormat

3. Optimized homepage title tag

  • Changed from "Scott Scoble — Human Cultivation Expert for the AI Age"
  • To "Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age"
  • Adds the "Keynote Speaker" keyword for search relevance

4. Fixed homepage h1 semantic structure

  • Added aria-label="The human cultivation expert for the AI age." to the h1
  • Preserves the decorative <span class="line"> visual effect
  • Improves accessibility and SEO by providing proper semantic heading content

5. GitHub profile README

  • Created github-profile-README.md — ready to deploy to the sscoble/sscoble GitHub profile repo
  • Includes professional bio linking to scott.scoble.me, book links, and speaker profile

6. Blog section — already exists

The blog section with /blog/ route, index page, and 12 blog posts already exists in the codebase. No scaffold needed.

Verification

  • Build passes cleanly (25 pages generated)
  • JSON-LD Event schemas confirmed in /speaking/ output
  • Book sameAs (Amazon) links confirmed in /books/ output
  • Homepage title tag and aria-label confirmed
## Summary Implements marcus/market#4 recommendations 1 & 2 for technical SEO and schema improvements. ## Changes ### 1. Event Schema + SpeakableSpecification on speaking page - Added JSON-LD `Event` schemas for all 3 signature talks ("50 First Dates with AI", "From Strip-Mining to Cultivation", "The Soil Under Your Team") - Each event includes `performer: Scott Scoble`, `offers`, and `description` - Added `SpeakableSpecification` schema for voice search discoverability ### 2. Enriched Book schemas on books page - Updated `author` from plain string to `Person` object with URL - Added `description` fields for each book - Added `sameAs` (Amazon canonical links) for "The Soil Beneath the Code" and "A Walk in Mentoring" - Used schema.org URLs for `bookFormat` ### 3. Optimized homepage title tag - Changed from "Scott Scoble — Human Cultivation Expert for the AI Age" - To "Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age" - Adds the "Keynote Speaker" keyword for search relevance ### 4. Fixed homepage h1 semantic structure - Added `aria-label="The human cultivation expert for the AI age."` to the h1 - Preserves the decorative `<span class="line">` visual effect - Improves accessibility and SEO by providing proper semantic heading content ### 5. GitHub profile README - Created `github-profile-README.md` — ready to deploy to the `sscoble/sscoble` GitHub profile repo - Includes professional bio linking to scott.scoble.me, book links, and speaker profile ### 6. Blog section — already exists The blog section with /blog/ route, index page, and 12 blog posts already exists in the codebase. No scaffold needed. ## Verification - Build passes cleanly (25 pages generated) - JSON-LD Event schemas confirmed in `/speaking/` output - Book `sameAs` (Amazon) links confirmed in `/books/` output - Homepage title tag and aria-label confirmed
agent-engineering added the
seo
label 2026-05-24 03:44:34 +00:00
Author
Collaborator

Verification Complete ✅

All 7 claimed changes from the ticket description have been verified in both source and built output:

1. ✅ Event Schema + SpeakableSpecification on /speaking page

  • src/components/SEO.astro (case 'speaking'): 3 Event JSON-LD schemas (50 First Dates with AI, From Strip-Mining to Cultivation, The Soil Under Your Team) with performer (Scott Scoble), offers, descriptions, eventStatus
  • SpeakableSpecification schema with cssSelector targeting h1 and hero p
  • Built output (dist/speaking/index.html): 3 Event, 3 Offer, 1 SpeakableSpecification, 7 Person types confirmed

2. ✅ Enriched Book schemas on /books page

  • src/components/SEO.astro (case 'books'): author as Person object with URL, descriptions, sameAs (Amazon) for "The Soil Beneath the Code" and "A Walk in Mentoring", schema.org bookFormat
  • Built output (dist/books/index.html): 3 Book, 3 Person types confirmed

3. ✅ Optimized homepage title tag

  • src/pages/index.astro line 8: title="Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age"
  • Built output: <title>Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age</title> confirmed

4. ✅ Fixed homepage h1 aria-label

  • src/pages/index.astro line 24: <h1 aria-label="The human cultivation expert for the AI age.">
  • Built output: aria-label confirmed rendered in dist/index.html

5. ✅ GitHub profile README

  • File exists at github-profile-README.md with professional bio, book links, speaker profile, and project links

6. ✅ Blog section

  • /blog/ route, index page, and multiple blog posts already exist in the codebase

7. ✅ Build passes cleanly

  • Build already exists in dist/ with 32 pages generated (more than the original 25 due to subsequent blog additions since this PR)
  • No build errors

All changes are complete and working. Closing this ticket.

## Verification Complete ✅ All 7 claimed changes from the ticket description have been verified in both source and built output: ### 1. ✅ Event Schema + SpeakableSpecification on /speaking page - `src/components/SEO.astro` (case 'speaking'): 3 `Event` JSON-LD schemas (50 First Dates with AI, From Strip-Mining to Cultivation, The Soil Under Your Team) with performer (Scott Scoble), offers, descriptions, eventStatus - `SpeakableSpecification` schema with cssSelector targeting h1 and hero p - **Built output** (`dist/speaking/index.html`): 3 Event, 3 Offer, 1 SpeakableSpecification, 7 Person types confirmed ### 2. ✅ Enriched Book schemas on /books page - `src/components/SEO.astro` (case 'books'): author as `Person` object with URL, descriptions, sameAs (Amazon) for "The Soil Beneath the Code" and "A Walk in Mentoring", schema.org bookFormat - **Built output** (`dist/books/index.html`): 3 Book, 3 Person types confirmed ### 3. ✅ Optimized homepage title tag - `src/pages/index.astro` line 8: `title="Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age"` - **Built output**: `<title>Scott Scoble — Keynote Speaker | Human Cultivation Expert for the AI Age</title>` confirmed ### 4. ✅ Fixed homepage h1 aria-label - `src/pages/index.astro` line 24: `<h1 aria-label="The human cultivation expert for the AI age.">` - **Built output**: aria-label confirmed rendered in `dist/index.html` ### 5. ✅ GitHub profile README - File exists at `github-profile-README.md` with professional bio, book links, speaker profile, and project links ### 6. ✅ Blog section - `/blog/` route, index page, and multiple blog posts already exist in the codebase ### 7. ✅ Build passes cleanly - Build already exists in `dist/` with 32 pages generated (more than the original 25 due to subsequent blog additions since this PR) - No build errors All changes are complete and working. Closing this ticket.
agent-engineering was unassigned by sscoble 2026-05-25 00:39:19 +00:00
Owner

This was implemented and the build passes cleanly with all schema changes verified (Event schemas on /speaking, Book schemas on /books, homepage title/h1 fixes, GitHub profile README). Closing as complete.

This was implemented and the build passes cleanly with all schema changes verified (Event schemas on /speaking, Book schemas on /books, homepage title/h1 fixes, GitHub profile README). Closing as complete.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: sscoble/brand-site#89
No description provided.