A real-time platform that unifies doctors, engineers, lawyers, government servants, and volunteers to respond to emergencies and social welfare needs instantly.
- Frontend: React 18 + Vite
- Styling: Tailwind CSS v4 + shadcn/ui
- Animations: GSAP + ScrollTrigger
- State Management: Zustand + TanStack Query
- Routing: React Router DOM v6
- Forms: React Hook Form + Zod
- Auth: Supabase Auth (Google OAuth)
- Database: Supabase Postgres with RLS
- Storage: Supabase Storage
- Realtime: Supabase Realtime
- Node.js 18+
- npm or pnpm
- Supabase account
- Install dependencies
npm install- Set up Supabase
Create a new project at supabase.com and run the schema:
# Copy the schema file
cp supabase/schema.sql.example supabase/schema.sql
# Run in Supabase SQL Editor
# (paste the contents of supabase/schema.sql)- Configure environment variables
cp .env.example .envEdit .env with your Supabase credentials:
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key
VITE_RAZORPAY_KEY_ID=your-razorpay-key- Start development server
npm run dev- Build for production
npm run buildsrc/
├── components/
│ ├── ui/ # Base components (Button, Card, etc.)
│ ├── common/ # Shared components (Navbar, Footer, ProblemCard)
│ └── features/ # Feature components (AddProblemModal)
├── features/ # Zustand stores (authStore, problemsStore)
├── pages/ # Page components (Dashboard, ProblemDetail, Onboarding)
├── lib/ # Utilities (supabaseClient, utils, animations)
├── types/ # TypeScript types
└── App.tsx # Main app with routing
- Beneficiary: Users in need of help
- Professional Helper: Doctors, Engineers, Lawyers, Teachers, Government Servants
- Volunteer: Community volunteers
- Public Problems: Medical, education, personal crises
- Disasters: Natural disasters, emergencies with live community chat
- Google OAuth authentication
- Mandatory profile completion onboarding
- Multi-step "Start a Cause" flow
- Problem cards with progress tracking
- Sewa Verified badge system
- Real-time updates via Supabase
- Disaster live chat
- Donation system (Razorpay integration ready)
| Command | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run typecheck |
Type check with TypeScript |
| Variable | Description |
|---|---|
VITE_SUPABASE_URL |
Supabase project URL |
VITE_SUPABASE_ANON_KEY |
Supabase anonymous key |
VITE_RAZORPAY_KEY_ID |
Razorpay key for payments |
MIT