Appearance
Deployment
GitHub Actions (automation)
This repo ships two workflows:
- Scheduled sync/export: runs 3x/day and publishes the snapshot as an artifact.
- CI tests: runs on push/PR.
Required secrets in the GitHub repository:
NOTION_TOKENNOTION_PARENT_PAGE_IDGITHUB_TOKENSYNC_WINDOW_DAYS(optional; defaults to 90)
Outputs:
- Workflow artifacts include
output/observable/snapshot.jsonandsnapshot.csv. - The workflow also publishes dashboard data files to
DOCS/public/dashboard/data/for web hosting.
Observable refresh
The Observable dashboard is intentionally manual-refresh:
- Download the artifact from the workflow run (or export locally).
- Replace the
snapshot.jsonFileAttachment in your private Observable notebook.
React dashboard app (same Cloudflare Pages site)
- Source app:
apps/dashboard/(Vite + React). - Hosted path:
/dashboard/on the same site that serves docs. - Build pipeline:
docs-sitebuild runsapps/dashboardbuild first.- Built dashboard assets are copied into
DOCS/public/dashboard/. - VitePress then builds docs to
DOCS/.vitepress/dist.
- Data path at runtime:
/dashboard/data/snapshot.json. - Snapshot data is refreshed by
scripts/publish_dashboard_data.pyinsync_export.yml.
Docs site (VitePress)
Docs are built from DOCS/ using the wrapper in docs-site/. Cloudflare Pages build:
- Build command:
npm --prefix docs-site run build - Output directory:
DOCS/.vitepress/dist