About this software
About CliniCare — Clinic Management SaaS
CliniCare is a React + TypeScript + Vite + Tailwind web app covering appointments, patients, doctors, consultations, e-prescriptions, billing, pharmacy, laboratory, attendance, reports and automated reminders. The backend is the buyer's own Supabase project (Postgres, Auth, Row Level Security), with 7 SQL migrations plus schema and seed files. With no Supabase values set it runs in a demo mode on fictional local data, with Admin, Doctor and Receptionist demo logins. The code also includes a public booking page, a patient portal page, and a landing page. The digest shows no test suite, no mobile app, and the reminders Edge Function is described as a skeleton, so the buyer must wire up their own WhatsApp, SMS or SMTP provider.
Why CliniCare — Clinic Management SaaS
What makes it better
than the alternatives
- 01
Two-layer authorisation
Every write in api.ts checks sign-in, clinic role and clinic scope, mirrored by Postgres RLS policies documented in docs/AUTHZ.md.
- 02
Runs without a backend
With blank env values the app runs in demo mode on fictional data, so buyers can evaluate every module before connecting Supabase.
- 03
Multi-tenant by design
Data is scoped by clinic_id, with onboarding that creates a clinic and links the creator as admin.
- 04
Documented security and schema
Ships SECURITY.md, AUTHZ.md, RLS policy notes, ERD, schema summary and an audit result document.
- 05
Reminder pipeline scaffold
Client-side rules, templates and previews plus a server-side send-reminders Edge Function that keeps provider secrets out of the browser.
Appointments & Booking
- Appointments page with status updates
- Public booking page
- Appointment types
- branches and holidays listed via API
Patients & Portal
- Patient records and creation
- Patient consent capture
- Patient portal page
Consultations & Prescriptions
- Doctor-created consultations with editable templates
- Prescription builder with drug autocomplete from an editable list
- Repeat a previous prescription in one click
- Print-friendly prescription view
Billing
- Invoices
- payments and credit notes
- Expenses panel
- Printable invoice view
Pharmacy & Laboratory
- Pharmacy items and sales
- Lab orders
Attendance & Doctors
- Staff attendance marking (admin only)
- Doctors management
Reminders
- Reminder rules
- templates
- schedules and logs
- Edge Function skeleton for WhatsApp
- SMS or SMTP sending
Dashboard, Reports & Admin
- Dashboard with KPI drawer
- Reports page
- Audit log page
- Settings and onboarding wizard
- Roles: admin
- doctor
- receptionist
- accountant
| Language | Version | Framework | Used for | Share of code |
|---|---|---|---|---|
| TypeScript (React) | — | — | Front-end | 55.1% |
| SQL | — | — | Database | 24.9% |
| TypeScript | — | — | Front-end | 19.3% |
| CSS | — | — | Styling | 0.5% |
| HTML | — | — | Front-end | 0.2% |
- Primary language
- TypeScript 5.9 (React 18.3 front end)
- Framework
- React 18.3.1 + Vite 6.4 + Tailwind CSS 4.3 (shadcn-style UI)
- Database
- PostgreSQL via Supabase (minimum version not stated in the digest)
- Authentication
- Supabase Auth for production sign-in, plus per-clinic role checks in api.ts and Postgres RLS. Demo login is local and fictional.
- Licence
- Single-site
- Screens
- 22
- Database tables
- 26
- Supported languages
- English UI only; no translation layer evident in the digest. No RTL support.
- Browser support
- Modern evergreen browsers (no browser test matrix in the digest)
| Minimum | Recommended | |
|---|---|---|
| CPU | Any device with a modern browser for use; 1 vCPU | 2 vCPU |
| RAM | 1 GB to build | 4 GB to build; the app itself is static files |
| OS | Node.js >= 20 and npm >= 10 (any OS that runs Node 20) | Node.js >= 20 and npm >= 10 (any OS that runs Node 20) |
| Est. monthly hosting | $25 | $25 |
Build the front end and host the `dist/` output on any static host, with your own Supabase project as the backend. ```bash cp React\ Web\ App/.env.example React\ Web\ App/.env # fill VITE_SUPABASE_URL and VITE_SUPABASE_ANON_KEY in .env cd "React Web App" npm ci npm run typecheck npm run build ``` Apply `database/schema.sql` or the migrations in `database/migrations/` (001 to 007, in order) to your Supabase project. Set reminder provider secrets with `supabase secrets set` and deploy the reminders function with `supabase functions deploy send-reminders`.
```bash cd "React Web App" npm ci npm run dev ``` Without Supabase values in `.env`, the app runs in demo mode on fictional local data only.
Quality report
Manually reviewedHow to read the quality report
What this is. Every project on Vibe96 goes through an automated audit of its source code before a reviewer in Dubai checks it by hand. The score is out of 100; 75 is the minimum to be listed, and any single failing check blocks a listing regardless of the score.
- Security
- No real credentials in the code, every data-changing route protected, admin areas role-gated, no SQL built from user input.
- Code structure
- A developer can navigate and extend it: clear module boundaries, no giant files, little copy-paste.
- Docs & completeness
- The setup guide, example config, schema and required files the builder committed to are actually in the archive.
- Dependency health
- Packages pinned, no known critical vulnerabilities, no abandoned libraries in production paths.
- Build & deploy
- A clean machine can restore, build and start it by following the shipped instructions.
Warnings are problems that didn't block the listing; they stay visible here until a later version clears them. The audit reads the code — it does not run it — so always try the live demo before you buy. Lines of code are counted from the same audited archive.
Reviewer notes (5 minor)
No real credentials found; demo login passwords ship as weak defaults in client code; feature-based layout is sound, but the demo feature is split across 28 files and some stores/files are large; sql and api code not provided for review; database rules cannot be confirmed from the excerpts; authz cannot be verified: api.ts, sql/rls and edge function not shown; demo role gates are ui-only. None of these stop the software from working; the developer has been told and improvements come in a future update.
Versions & updates
No updates yet. New versions appear here with a changelog.
Buyers receive updates free for 1 year.
What you get
- </>Full source codeThe complete audited source, delivered as a download from your account. No obfuscation.
- ▤DocumentationSetup guide, architecture notes, CLAUDE.md and AGENTS.md.
- ↻One year of updatesEvery new version the builder publishes, free for 12 months.
- ♧30 days of supportInstallation and defect support through Vibe96 tickets.