Skip to content

🚀 Future Site Enhancements & Comments Planning

This document outlines potential future upgrades, extensions, and the technical architecture required to implement inline commenting for family members on this planning site.


💬 Inline Commenting System Options

Because the site is protected by Cloudflare Access (Zero Trust), we already have secure, authenticated user sessions. We can leverage this to implement comments without adding login screens or password managers.

This approach keeps everything hosted on Cloudflare's serverless edge, meaning zero hosting fees and extremely fast load times.

  • Database: Cloudflare D1 (a serverless, zero-maintenance SQLite database).
  • API Backend: Cloudflare Pages Functions (runs lightweight TypeScript/JavaScript API endpoints on the edge).
  • Authentication (Zero Auth Code):
    • Since Cloudflare Access brokers the login, every API request sent to Pages Functions automatically carries a Cf-Access-Jwt-Assertion header.
    • The backend function decodes this JWT to securely extract the family member's email (e.g., caw@christianwilcox.com) and display name.
  • Frontend Component: A custom Vue component (e.g., <InlineComments /> or <SectionComments page="moving-checklist" />) embedded in the markdown pages.

Option B: Self-Hosted Cusdis (Lightweight & Open-Source)

Cusdis is a privacy-first, lightweight alternative to Disqus.

  • Deployment: Can be self-hosted on a free Vercel + Supabase instance.
  • Integration: A single script tag or simple iframe wrapper embedded in our VitePress templates.
  • Pros: Requires almost no custom code on our end; has a simple admin dashboard for approving comments.
  • Cons: Doesn't natively bind to Cloudflare Access session emails without custom setup.

🛠️ Other Useful Site Extensions

📱 1. Offline PWA Support (Progressive Web App)

If Mom and Dad are at Cedar Crest where Wi-Fi might be initially spotty or unavailable, they can still access all the checklists and guides offline.

  • How: Integrate vitepress-plugin-pwa to register a Service Worker that caches all pages and assets locally on their iPhones/iPads.

🖨️ 2. Print-Friendly Stylesheets

Some checklists or cost sheets are useful to have as physical papers.

  • How: Add a print media query in .vitepress/theme/custom.css to hide the sidebars, header navigation, search bar, and edit dates when printing a page from a browser.

📝 3. "Edit this Page" & Git History

Display a quick link at the bottom of pages allowing editors to go directly to the source file on the Forgejo server.

  • How: Add editLink configuration under themeConfig in .vitepress/config.mts.

Family relocation planner for Mom & Dad.