尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證A shift scheduling PWA for the VHW Emergency Centre medical team. Replaces a manual PDF-based rostering process with an automated scheduler, admin tools, and a doctor-facing portal.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A shift scheduling PWA for the VHW Emergency Centre medical team. Replaces a
manual PDF-based rostering process with an automated scheduler, admin tools,
and a doctor-facing portal. This tool was created independently and is not
endorsed by WCG, NDoH, or VHW.
• Frontend: React + Vite + Tailwind CSS, deployed on Vercel
• Backend (scheduling engine): Python FastAPI + OR-Tools, deployed on Render
• Database / Auth / Storage: Supabase
2. Copy the environment template and fill in your Supabase values:檢視完整 README ↗A shift scheduling PWA for the VHW Emergency Centre medical team. Replaces a manual PDF-based rostering process with an automated scheduler, admin tools, and a doctor-facing portal. This tool was created independently and is not endorsed by WCG, NDoH, or VHW.
Install dependencies:
npm install
Copy the environment template and fill in your Supabase values:
cp .env.example .env.local
Then edit .env.local and set:
VITE_SUPABASE_URL — your Supabase project URLVITE_SUPABASE_PUBLISHABLE_KEY — your Supabase publishable keyBoth values are available in Supabase under Project Settings → API Keys.
Start the dev server:
npm run dev
The app will be available at http://localhost:5173
src/
components/ Shared UI components (layout, route guards)
context/ React context providers (auth/session state)
lib/ External service clients (Supabase)
pages/ Route-level page components
styles/ Global CSS and Tailwind entry point
VITE_SUPABASE_URL, VITE_SUPABASE_PUBLISHABLE_KEY) in the
Vercel project settings./backend (added in a later phase) for the FastAPI
scheduling engine, deployed separately on Render.preview branchEvery branch pushed here gets its own Vercel preview deployment, but you can only sign in on one of them.
Login is gated by Cloudflare Turnstile, and a Turnstile site key only issues
tokens on hostnames listed in its Hostname Management allowlist. A per-branch
preview URL (rotacat-git-<branch>-vhw-ec.vercel.app) is not on that list, so
the widget fails with error 110200 (domain not allowed), no token arrives, and
the submit button stays disabled. Unsetting VITE_TURNSTILE_SITE_KEY for the
Preview environment does not help — Supabase Auth verifies the captcha
server-side, so sign-in then fails for a missing token instead. Nor is there
a wildcard: Cloudflare rejects vercel.app as a public-suffix domain.
So there is one long-lived branch, preview, whose Vercel alias never changes:
https://rotacat-git-preview-vhw-ec.vercel.app
That hostname is allowlisted in the Turnstile widget's Hostname Management list, so sign-in works there. Nothing needs to change in Cloudflare for a new branch.
To review a branch, point preview at its head:
git fetch origin <branch-to-review>
git push --force origin FETCH_HEAD:refs/heads/preview
Vercel redeploys and re-aliases the same hostname to that commit — including when that commit already has a preview deployment of its own under its real branch name.
One exception: Vercel will not build a commit that is already deployed to
production, so pointing preview at main's head (or at a PR head that
has just been merged and promoted) produces no deployment and leaves the alias
where it was. Review before merging, or push a throwaway commit on top.
preview is a disposable review pointer, never a source of truth: don't commit
to it, don't merge from it, and expect anyone to force-move it at any time.
Preview deployments are behind Vercel SSO (deployment protection is on for everything except custom domains), so a reviewer also needs access to the Vic-EC Vercel team to open them.
See FUTURE_IDEAS.md for unscoped feature ideas not yet
tied to a build phase.
This repository is proprietary — see LICENSE. It is published
on GitHub for visibility and collaboration, not as open-source software; no
license to use, copy, modify, or redistribute the code is granted.