React + Tailwind + Supabase application converted from the Google Stitch UI exports.
- Install dependencies:
npm install- Create
.envfrom.env.example:
VITE_SUPABASE_URL=https://ikwpbluhjrvloyejtiid.supabase.co
VITE_SUPABASE_ANON_KEY=your-publishable-key-
Run
supabase.schema.sqlin the Supabase SQL editor. -
Create the first admin user in Supabase Auth, then insert or update its profile:
insert into public.profiles (id, full_name, email, role, status)
values ('AUTH_USER_ID', 'Admin User', 'admin@example.com', 'admin', 'approved')
on conflict (id) do update set role = 'admin', status = 'approved';- Start locally:
npm run dev- Admin and student authentication through Supabase Auth.
- Student signup requests remain pending until admin approval.
- Role-protected admin and student routes.
- Student, project, task, submission, rating, and report workflows.
- PDF, Excel, and WhatsApp report exports.
- Supabase RLS policies for admin-wide access and student-owned access.
- Vercel-ready Vite build.
Set VITE_SUPABASE_URL and VITE_SUPABASE_ANON_KEY in Vercel project environment variables, then deploy with the default Vite settings.