Skip to content

alim888aa/consultant-approvals

Repository files navigation

ConsultantApprovals

What I built:
I focused on the core consultant and client approval loop. Consultants can enter their name and email (stored in the consultants table), create projects, and make approval requests with multiple file uploads (stored in Supabase Storage). Each request generates a unique client link (UUID token) where the client can approve or request changes (with required feedback). After the client responds, the page becomes a "receipt" view. I also included a simple resubmit flow so the consultant can update a request and reset it back to pending without generating a new link. The stack is Next.js (App Router) + TypeScript + Supabase (Postgres + Storage) + Drizzle + shadcn/ui.

What I intentionally left out:
I intentionally did not build authentication, Row Level Security, strict storage/database security policies, or email delivery/notifications. I also skipped templates, edit/delete/archive, detailed audit trails beyond basic timestamps, roles/permissions, and rate limiting/analytics. These are important for a real product, but implementing them in 4 hours is out of scope since they don't represent the core functionality or the proof of concept.

What I'd do next with more time:
First, I'd add Supabase Auth and RLS (and storage policies) to make consultant data properly private and production-ready. Then I'd add email notifications, signed/expiring links, and a richer audit/history view (multiple responses, versioning and resubmission history).

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors