Logo Lanfrica

BlakesCloud/Kilifi-ICT-support

Domain:

healthcare

Record type:

software
Creator:
Bla
Host:
Hospital IT hotline # Kilifi Hospital IT Helpdesk A lightweight IT support ticketing system built for Kilifi County Referral Hospital. Staff submit IT requests without logging in. The IT team manages and resolves them via a protected dashboard. --- ## Tech stack - **React** (Vite) — frontend - **Supabase** — database, auth, realtime updates - **React Router** — staff portal vs IT dashboard routing - **Vercel** — hosting (free tier) --- ## Project structure ``` src/ ├── components/ │ ├── staff/ │ │ ├── SubmitForm.jsx # Staff ticket submission form │ │ └── TrackTicket.jsx # Staff ticket status tracker │ ├── dashboard/ │ │ ├── Login.jsx # IT staff login │ │ ├── Dashboard.jsx # Main IT dashboard │ │ └── TicketDetail.jsx # Ticket update panel │ └── shared/ │ └── index.jsx # Reusable UI components ├── hooks/ │ └── useTickets.js # All Supabase data logic ├── lib/ │ ├── supabase.js # Supabase client + DB schema SQL │ └── constants.js # Categories, departments, styles └── pages/ └── StaffPortal.jsx # Staff-facing layout ``` **Routes:** - `/` → Staff portal (public — no login required) - `/dashboard` → IT dashboard (requires IT staff login) --- ## Setup guide ### Step 1 — Supabase project 1. Go to supabase.com and create a free account 2. Create a new project (name it `kilifi-helpdesk`) 3. Wait for it to provision (~1 minute) ### Step 2 — Run the database SQL 1. In your Supabase dashboard → **SQL Editor** → **New query** 2. Copy the entire SQL block from `src/lib/supabase.js` (between the `===` lines) 3. Paste it and click **Run** This creates: - `tickets` table with auto-generated ticket numbers (`KH-0001`, `KH-0002`...) - Row Level Security (staff can submit and read; only IT can update) - `it_users` table for IT staff roles - Auto-updating `updated_at` trigger ### Step 3 — Create IT staff accounts 1. Supabase dashboard → **Authentication** → **Users** → **Add …