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 diApp.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
idunik 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.webmanifestharus terisi lengkap (nama, ikon, warna tema). - •Service Worker harus menangani offline mode dan caching.
- •
UpdateManager.tsxmengelola 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.