Skip to content

hreflang tags + canonical URL audit #125

Description

@truthixify

Tier: S (1-2 days) | Type: seo

Context. Wave 7 shipped react-i18next with EN + ES, but the site emits no hreflang alternates and canonical URLs are inconsistent per page. Google is currently guessing which locale to serve and duplicate-content risk is real once Wave 8 adds a third locale (see issue #13).

Scope.

  • Add <link rel="alternate" hreflang> entries for every localized route, plus hreflang="x-default" pointing to EN.
  • Add a single canonical URL per route using react-helmet-async (already in the dep tree per src/pages/Blog.tsx).
  • Audit every existing page (Home, Faq, Privacy, Newsletter, UseCases, Stellar, Roadmap, Grants, CaseStudies, Careers, About, Vitals, Contributors, Blog, Ecosystem) for consistent canonical + description + og:* metadata.
  • Central helper in src/utils/seo.ts so future pages inherit correctly.

Acceptance.

  • Every route emits <link rel="canonical"> with the absolute production URL
  • Every localized route emits hreflang alternates for every shipped locale + x-default
  • curl -sL usewraith.xyz/es/faq | grep -c hreflang >= 2 in a staging test
  • Build passes
  • Lighthouse SEO stays >= 90

Files. src/utils/seo.ts (new), every src/pages/*.tsx.

Activity

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

Metadata

Metadata

Labels

Stellar WaveIssues in the Stellar wave programdripsFunded via Drips Networkhelp wantedExtra attention is neededi18nInternationalizationseoSearch engine optimizationstellar-waveAuto-created for Wave 8wave-8Auto-created for Wave 8wwwAuto-created for Wave 8

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions