North Star 2026
✨ Trust Life and its Process
Settings
Manage dropdown lists · backup & restore · cloud sync
Backup & Restore
—
📂
Drop JSON backup here or click to restore
☁️ Cloud Sync (Google Sheets)
Data syncs automatically on every save and on page load. Update URL if you redeploy the script.
Import from Excel / CSV
Export your Excel as CSV first (File → Save As → CSV), then drop here.
📊
Drop CSV file here or click to browse
📖 Setup Guide & Technical Notes
🌐 Hosting on Cloudflare Pages
- Go to dash.cloudflare.com → Pages → Create application → Upload assets
- Rename this file to index.html and upload it
- Deploy — you get a free URL (e.g.
kanchana.pages.dev)
- Access from any device including iPad at that URL
- To update: re-upload via Pages dashboard → Deployments → Upload
☁️ Google Apps Script Backend Setup
- Open KG Routine Tracker Google Sheet
- Extensions → Apps Script → paste
kanchana-apps-script.js into Code.gs
- Click Deploy → New deployment → Type: Web app
- Execute as: Me · Who has access: Anyone
- Click Deploy → Authorize access → Advanced → Go to project (unsafe) → Allow
- Copy the Web App URL and paste it in the ☁️ Cloud Sync card above
🔄 How Sync Works
- On page load: fetches all entries from Google Sheet, merges missing dates into localStorage
- On Save Entry: immediately pushes to Google Sheet
- Nav bar shows ✓ Synced (green) or ✗ Offline (red)
- Offline mode works — localStorage keeps everything, syncs on next connection
- Data stored as JSON in cell A1 of the "Data" sheet tab
⚠️ If You Redeploy the Apps Script
- Each new deployment = new URL — update it in Cloud Sync card above
- Use Manage deployments → Edit (pencil) to update without changing URL
💾 Tech Stack
- Single-file HTML — no build step, only Chart.js (CDN)
- localStorage keys:
k50v3_entries, k50v3_masters, k50_sync_url
- Cloud: Google Apps Script Web App (free, no OAuth)
- Current URL:
https://script.google.com/macros/s/AKfycbwUi4KLl_6POZuyZWTDw6XZx0xdUkk3a-aHO81Je9I-PNgAEMcvrtyYlRvDkT7HHJtmQQ/exec
Danger Zone