Skip to content

Latest commit

Β 

History

History
73 lines (51 loc) Β· 4.27 KB

TODO.md

File metadata and controls

73 lines (51 loc) Β· 4.27 KB

ClimbStack Website β€” TODO

Checklist of best practices for a production-grade GitHub Pages site.


1. SEO & Discovery

  • sitemap.xml β€” Auto-generated via GitHub Actions (cicirello/generate-sitemap@v1) on every push to main and daily cron.
  • robots.txt β€” Allow all crawlers, pointing to https://climbstack.github.io/sitemap.xml.
  • Canonical URLs β€” Added <link rel="canonical" href="..."> to every page (index.html, privacy.html).
  • Open Graph meta tags β€” og:title, og:description, og:image, og:url, og:type, og:site_name, og:locale configured.
  • Twitter Card meta tags β€” twitter:card (summary_large_image), twitter:title, twitter:description, twitter:image configured.
  • Structured Data (JSON-LD) β€” Added SoftwareApplication and WebSite schema in index.html.
  • HTML lang attribute β€” Dynamically synced with i18n via js/i18n.js.
  • <meta name="theme-color"> β€” Set to #0D1117 (Alpine Dusk background).

2. Custom Domain (Postponed)

  • CNAME file β€” Create CNAME with climbstack.is-a.software (waiting for is-a.software service to come back up).
  • DNS configuration β€” Add CNAME record pointing to climbstack.github.io via the is-a.software PR process.
  • Enforce HTTPS β€” Enable in GitHub Pages settings once custom domain is verified.
  • Update hardcoded URLs β€” Switch canonical, sitemap, and OG tags to climbstack.is-a.software once custom domain is active.

3. Identity & Verification

  • AT Protocol DID (atproto-did) β€” Skipped for now.
  • rel="me" links β€” Included for verified social profiles in footer.
  • Google Search Console β€” Ownership verification meta tag added to index.html.

4. Security

  • SECURITY.md β€” Responsible disclosure security policy with contact details.
  • Referrer Policy β€” Added <meta name="referrer" content="strict-origin-when-cross-origin">.
  • Subresource Integrity (SRI) β€” Configured on external CDN assets.

5. Performance

  • Image optimization β€” Converted feature.png and icon.png to WebP (assets/feature.webp, assets/icon.webp) with <picture> fallback and explicit width/height dimensions.
  • Favicon set β€” Full favicon set generated: favicon.ico, apple-touch-icon.png (180Γ—180), favicon-32x32.png, favicon-16x16.png, android-chrome-192x192.png, android-chrome-512x512.png.
  • Preconnect hints β€” Added <link rel="preconnect"> for Google Fonts and Bootstrap CDN.
  • Decoding hints β€” Added decoding="async" on images to speed up rendering.

6. Accessibility (A11y)

  • Skip to content link β€” Visually hidden accessible skip link (<a href="#main-content" class="skip-link">) on all pages.
  • Focus styles β€” High-contrast visible focus indicators.
  • Alt text audit β€” Meaningful alt attributes on all images.
  • Heading hierarchy β€” Logical h1 β†’ h2 β†’ h3 hierarchy.
  • ARIA landmarks β€” Proper semantic structure with <nav>, <main id="main-content">, <header>, <section>, <footer>.
  • Reduced motion β€” Added @media (prefers-reduced-motion: reduce) in css/climbstack.css.

7. PWA & App-like Features

  • Web App Manifest (site.webmanifest) β€” App name, icons, theme color, background color, display mode.
  • apple-touch-icon β€” Added for iOS bookmarks.
  • Service Worker β€” Optional offline caching (can be added if offline standalone PWA is needed).

8. Error Handling

  • Custom 404 page β€” 404.html with Alpine Dusk styling, i18n support, and navigation back to home.

9. CI/CD β€” GitHub Actions

  • Sitemap generation β€” .github/workflows/generate-sitemap.yml using cicirello/generate-sitemap@v1.
  • Lighthouse CI β€” .github/workflows/lighthouse.yml and .lighthouserc.json testing performance, accessibility, best practices, and SEO scores on push and PR.

10. Miscellaneous

  • humans.txt β€” Credits to Founder & Lead Developer Giovanni Zanotti.
  • License file β€” LICENSE (MIT).
  • Contributing guide β€” CONTRIBUTING.md.
  • Issue templates β€” Add issue templates for website repo if external contributions increase.