Skip to content

Search optimisation: RHCSA and RHCE keywords, exam objective maps, IndexNow - #94

Open
ayeshrodz wants to merge 2 commits into
mainfrom
seo/exam-keywords
Open

ayeshrodz wants to merge 2 commits into
mainfrom
seo/exam-keywords

Conversation

@ayeshrodz

Copy link
Copy Markdown
Owner

Titles and descriptions for searches

  • Every page has a search title and description (for example LVM Tutorial: Create, Extend and Shrink Volumes (RHCSA), Ansible Vault Tutorial: Encrypt Secrets in Playbooks). Programs, chapters and the home page name the RHCSA (EX200) and RHCE (EX294) exams.
  • A shared module (packages/engine/src/lib/seo.js) is used by both the build and the app, so a crawler sees the same title with or without JavaScript.
  • Quiz and summary pages have unique titles instead of 22 copies of Knowledge check and Summary and cheat sheet.

New pages

  • RHCSA (EX200) and RHCE (EX294) exam objective study maps link every objective area to the lessons, with a link to Red Hat's official list. The home page links to both.

Technical

  • Internal links use the trailing-slash address the host serves, so no link goes through a redirect. This also fixes the sidebar filter's Enter key.
  • Favicons (SVG, PNG 48/96/192/512, ICO, Apple touch icon), a web app manifest and the theme colour.
  • Structured data adds keywords, the certifications (about), teaches, dateModified and the organisation logo.
  • IndexNow tells Bing (and DuckDuckGo, Yandex and others through it) which pages changed after each deploy. It runs in GitHub Actions, and the key file is public as the protocol requires.
  • Initial JavaScript stays about 170 KB gzipped (React, the router and the content validators). The rest is fetched while the browser is idle after the first page draws, so later pages and activities open without waiting.
  • The build-time page text is hidden as soon as JavaScript runs, so it no longer flashes before the app draws.
  • The trademark notice names RHCSA and RHCE.

Browser, mobile, unit and lab tests pass locally.

🤖 Generated with Claude Code

ayeshrodz and others added 2 commits October 8, 2026 05:11
…cons, IndexNow and prefetching

- Every page, chapter and program gets a search title and description written
  for what people search, naming the RHCSA (EX200) and RHCE (EX294) exams.
  The build writes them into each page; the app keeps the head in step.
- Quizzes and summaries get unique titles ("LVM quiz", "LVM cheat sheet").
- New RHCSA and RHCE exam objective study maps link each objective area to
  the lessons that teach it; the home page links to them.
- Internal links use the trailing-slash address the host serves, so no
  link goes through a redirect.
- Favicons (svg, png, ico), web app manifest and theme colour.
- Structured data names the certifications, keywords, topics and dates.
- IndexNow notifies Bing and others of changed pages after each deploy.
- The rest of the app's code is fetched while the browser is idle, and the
  build-time text no longer flashes before the app draws the page.
- Trademark notice names RHCSA and RHCE.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant