AgentSkillsCN

learnink-compliance-seo

LearnInk 的 SEO 标准、站点地图、法律合规(隐私/条款)以及 OAuth 品牌建设。

SKILL.md
--- frontmatter
name: learnink-compliance-seo
description: Standar SEO, sitemap, kepatuhan legal (Privacy/Terms), dan branding OAuth untuk LearnInk.

LearnInk Compliance & SEO

SEO Best Practices

Meta Tags (Wajib di setiap halaman publik)

  • <title> — Deskriptif, maks 60 karakter.
  • <meta name="description"> — Ringkas, maks 160 karakter.
  • Gunakan react-helmet-async (<HelmetProvider>) yang sudah terpasang di App.tsx.

Heading Structure

  • 1 halaman = 1 <h1> saja.
  • Hierarki: h1 → h2 → h3 (jangan lompat).

Semantic HTML

  • Gunakan <main>, <nav>, <article>, <section> dengan benar.
  • Semua elemen interaktif harus memiliki id unik dan deskriptif.

Sitemap

  • Lokasi: https://domain/sitemap.xml
  • Perlu di-generate otomatis setiap kali modul baru dipublikasikan.
  • Submit ke Google Search Console.

Kepatuhan Legal

Privacy Policy (/privacy)

  • Komponen: src/pages/public/PrivacyPolicy.tsx
  • Harus menjelaskan: data yang dikumpulkan, penggunaan cookie, hak pengguna.
  • Dibutuhkan untuk verifikasi OAuth Google.

Terms of Service (/terms)

  • Komponen: src/pages/public/TermsOfService.tsx
  • Harus menjelaskan: syarat penggunaan, batasan tanggung jawab.

OAuth Branding

  • Google OAuth memerlukan Privacy Policy & Terms yang aktif dan dapat diakses.
  • Logo dan nama aplikasi harus konsisten di Google Cloud Console.

PWA Compliance

  • manifest.webmanifest harus terisi lengkap (nama, ikon, warna tema).
  • Service Worker harus menangani offline mode dan caching.
  • UpdateManager.tsx mengelola notifikasi update otomatis ke user.

Performa & Aksesibilitas

  • Target: Lighthouse score ≥ 90 untuk Performance, Accessibility, dan SEO.
  • Semua gambar harus memiliki atribut alt.
  • Warna kontras harus memenuhi WCAG 2.1 AA minimum.

Yang TIDAK Boleh Dilakukan

  • ❌ Meninggalkan halaman publik tanpa meta tag.
  • ❌ Menggunakan lebih dari 1 <h1> per halaman.
  • ❌ Mengabaikan aksesibilitas (missing alt, missing aria-label).
  • ❌ Men-deploy tanpa memvalidasi manifest PWA.