尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Assistive pregnancy tracking and OPD digitisation for OB-GYN private practices in India — built for Health-a-thon 2026 (Koita Foundation / IIT Bombay), Maternal & Child Health track, "Patient Follow-up & Continuity of Care."
For a doctor and care team managing dozens to hundreds of active pregnancies, MatruSetu tracks each patient's week-by-week ANC schedule (scans, tests, injections), flags patients who are drifting out of follow-up, and turns photographed OPD case papers, WhatsApp reports and PDFs into one searchable patient timeline.檢視完整 README ↗Assistive pregnancy tracking and OPD digitisation for OB-GYN private practices in India — built for Health-a-thon 2026 (Koita Foundation / IIT Bombay), Maternal & Child Health track, "Patient Follow-up & Continuity of Care."
For a doctor and care team managing dozens to hundreds of active pregnancies, MatruSetu tracks each patient's week-by-week ANC schedule (scans, tests, injections), flags patients who are drifting out of follow-up, and turns photographed OPD case papers, WhatsApp reports and PDFs into one searchable patient timeline.
npm install
cp .env.example .env.local # fill in your Supabase project's URL + keys
npm run dev
Migrations live in supabase/migrations/. Against a linked Supabase project:
npx supabase link --project-ref <your-project-ref>
npx supabase db push
npm run db:seed creates a demo clinic ([email protected] / DemoClinic123!) with ~40 synthetic patients spread across trimesters and follow-up states (on track / at risk / lost). Safe to run against a shared project — it no-ops if that clinic already has patients rather than duplicating them. All data is fabricated.
| Command | What it does |
|---|---|
npm run dev | Start the dev server |
npm run build | Production build (Serwist's service worker needs webpack, not Turbopack — see next.config.ts) |
npm run lint | ESLint |
npm run typecheck | tsc --noEmit |
npm test | Unit tests (Vitest) |
npm run db:validate | Offline SQL syntax check for migrations |
npm run db:seed | Seed a demo clinic with synthetic patients |
npm run test:e2e | Playwright golden-path test (needs a running dev server + live Supabase credentials — not run in CI, see playwright.config.ts) |
The app deploys to Vercel with no extra config — it auto-detects Next.js and runs npm run build (which already targets webpack, required by Serwist's PWA build; see next.config.ts).
.env.local:
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEY (server-only — never prefix with NEXT_PUBLIC_)NEXT_PUBLIC_SITE_URL — set to the deployed URL (e.g. https://your-app.vercel.app)localhost.https://<project-ref>.supabase.co/auth/v1/callback), not the app's own domain — this doesn't change when you deploy.Built and verified end-to-end against a live Supabase project: auth/onboarding (email/password + Google OAuth, with real SMTP via Resend for confirmation emails), patient registration with auto-generated ANC schedules, the follow-up dashboard and call queue (WhatsApp/tel links, per-clinic message templates, contact logging), document capture with in-browser OCR and full-text search, the OPD register, doctor Settings (clinic details, thresholds, schedule template, staff invites, message templates), and PWA install/offline support. A Playwright test (e2e/golden-path.spec.ts) covers the full flow, and cross-clinic RLS isolation has been independently verified. Accessibility pass done: every custom color pair meets WCAG AA contrast, and interactive elements meet the 44px touch-target minimum.
Not yet done: an automated WhatsApp bot (reminders are currently a staff-initiated call queue with one-tap WhatsApp/tel links by design — a real WhatsApp Business API bot needs Meta Business verification, which is an external approval process, not an engineering task), Hindi/Marathi message-template wording (needs the Clinical Lead's review before shipping — the field only supports one language per template right now), and Clinical Lead sign-off on the default ANC schedule windows and follow-up-risk thresholds.
See supabase/migrations/ for the schema and lib/ for the pregnancy-dating, ANC-schedule, and follow-up-risk logic.