Files
kayjaydee e44175b9e4 chore: archive v1.1 milestone — SEO Hytale Autorité & Contenu shipped
M1.1 complete (phases 5-8, 13 plans):
- @nuxt/content v3 + Shiki syntax highlighting
- Blog listing + article pages SSR bilingue (TOC + prev/next)
- JSON-LD Article/Breadcrumb/CollectionPage + sitemap hreflang x-default
- 2 articles seed Hytale FR+EN (API Java réelle)
- Cocon sémantique /blog ↔ /hytale
2026-04-22 22:08:00 +02:00

3.4 KiB
Raw Permalink Blame History

Requirements: Milestone v1.1 — SEO Hytale — Autorité & Contenu

Archived: 2026-04-22 Status: All 13 requirements SHIPPED

v1.1 Requirements — SEO Hytale — Autorité & Contenu

Blog — Système

  • BLOG-01: Intégration @nuxt/content — renderer markdown complet (syntax highlighting Shiki, images NuxtImg, tables, callouts/alerts via composants MDC custom) — Phase 5
  • BLOG-02: Page listing /blog — liste articles avec titre, description, date, tags, SSR bilingue — Phase 6
  • BLOG-03: Page article /blog/[slug] — rendu SSR complet, table des matières (BlogToc + IntersectionObserver), navigation prev/next (BlogPrevNext) — Phase 6
  • BLOG-04: Blocs de code avec syntax highlighting (Shiki single-theme github-dark, langues Kotlin/Java/TypeScript/Shell supportées) — Phase 5
  • BLOG-05: Images dans articles — <NuxtImg> via composant ProseImg custom, lazy + webp — Phase 5

Blog — Contenu

  • BLOG-06: Articles bilingues FR/EN — collections blog_fr / blog_en dans content.config.ts, slugs identiques pour hreflang pairing — Phase 6
  • BLOG-07: 2 articles seed Hytale publiés — "How to build your first Hytale plugin" et "Hytale plugin development in 2026" (FR+EN, draft:false, Java API réelle) — Phase 8

SEO — Blog

  • SEO-10: useSeoMeta() par article — title, description, og:title/description/image uniques par slug — Phase 7
  • SEO-11: JSON-LD Article par billet — author/publisher @id=#killian, datePublished, dateModified, headline, mainEntityOfPage, inLanguage — Phase 7
  • SEO-12: Sitemap étendu — endpoint Nitro /api/__sitemap__/urls source @nuxtjs/sitemap, inclut /blog/[slug] FR+EN auto — Phase 7
  • SEO-13: Open Graph image par article — helper resolveOgImage() (frontmatter image: → fallback /og-blog-default.jpg), jamais l'og-image.png générique — Phase 7

SEO — Cocon sémantique

  • SEO-14: Liens internes — articles blog contiennent 1-2 liens inline vers /hytale (ou /en/hytale) ; /hytale affiche section "Articles récents" filtrée tag=hytale (HytaleRecentArticles.vue) — Phase 8
  • SEO-15: JSON-LD BreadcrumbList — Accueil → Blog → Article sur /blog/[slug] ; Accueil → Blog sur /blog — Phase 7

Traceability v1.1

Requirement Phase Outcome
BLOG-01 Phase 5 Validated
BLOG-04 Phase 5 Validated
BLOG-05 Phase 5 Validated
BLOG-02 Phase 6 Validated
BLOG-03 Phase 6 Validated
BLOG-06 Phase 6 Validated
SEO-10 Phase 7 Validated
SEO-11 Phase 7 Validated
SEO-12 Phase 7 Validated
SEO-13 Phase 7 Validated — with deferred: asset /og-blog-default.jpg branded design reste en backlog (placeholder 72 bytes actuel)
SEO-15 Phase 7 Validated
BLOG-07 Phase 8 Validated — correction post-shipping Kotlin→Java suite fetch hytalemodding.dev
SEO-14 Phase 8 Validated

Deferred from v1.1 (carried to backlog)

  • Asset branded /og-blog-default.jpg 1200×630 — design work, placeholder en place
  • og:image dynamique Satori (SEO-06 original) — coût vs impact non justifié
  • Plus de 2 articles seed — backlog éditorial continu, pas une milestone
  • Page /blog/tags/[tag] — utile au SEO long-tail dès qu'on a 10+ articles
  • RSS feed — si audience organique > 500 sessions/mois