What is AharaSetu?
AharaSetu β meaning Food Bridge in Sanskrit β is a full-stack MERN web application built to bridge the gap between surplus food at restaurants and people in need, particularly in underserved communities and slum areas across Indian cities.
Every day, restaurants discard enormous quantities of perfectly edible food while millions struggle to find a single meal. AharaSetu creates a structured, accountable platform connecting food donors with receivers through real payments, admin oversight, and end-to-end transaction tracking.
Free Listings
Restaurants donate leftover food at no cost to volunteers and NGOs
Paid Listings
Restaurants offer surplus food at a significantly reduced price
Admin Oversight
Every listing reviewed and approved by admin before going live
Email at Every Step
Automated HTML emails keep all parties informed throughout
The Team
The Problem We Solve
| Problem | Who is Affected | Impact |
|---|---|---|
| Daily food wastage at restaurants | Restaurants, Environment | Tons of edible food discarded daily |
| Food insecurity in slum areas | Low-income communities | Malnutrition and persistent hunger |
| No centralized digital platform | NGOs and Volunteers | Inefficient food redistribution |
| Lack of real-time coordination | All stakeholders | Uneven, untracked food sharing |
Existing Systems & Their Gaps
| Platform | How it Works | Key Limitation |
|---|---|---|
| Too Good To Go | Sells surplus as "surprise bags" | Paid only, no free option, no food transparency |
| Olio | Community food sharing app | No admin oversight or payment system |
| Zomato Feeding India | Restaurant to NGO donations | No volunteer/user involvement |
| Swiggy Hope Not Hunger | Surplus food to NGOs | No real-time tracking or payments |
| Informal Networks | Staff consume surplus food | No accountability or digital tracking |
MERN Architecture
Built on the MERN stack with industry-standard tools for authentication, payments, and email communications.
Role-Based Access System
- Post food listings
- Approve/reject claims
- Acknowledge food provided
- View listing IDs
- Report issues
- Browse listings
- Claim food
- Make payments
- Acknowledge pickup
- Report issues
- Browse listings
- Claim food
- Pay & acknowledge
- Report issues
- Approve/reject listings
- Complete transactions
- View all data & filters
- Manage reports
- Browse listings
- Claim free food
- Contact admin
Phase 1 β Complete Feature Set
Authentication & Security
| Feature | Description | Status |
|---|---|---|
| OTP Registration | 6-digit OTP sent to email, expires in 10 minutes, with resend option | Done |
| Email Verification | Users must verify OTP before login is allowed | Done |
| Auto-verify Admin | Admin accounts auto-verified without OTP requirement | Done |
| JWT Login | Secure login with JSON Web Token, role embedded in token | Done |
| Session Management | sessionStorage β clears automatically on browser close | Done |
| Forgot Password | Reset link sent to email, expires in 15 minutes | Done |
| Reset Password | Secure token-based reset with live validation hints | Done |
Food Listing Management
| Feature | Description | Status |
|---|---|---|
| Post Food Listing | Title, description, quantity, expiry, type, price, address, phone, email | Done |
| Dual Mode Listings | Free and Paid listings supported on the same platform | Done |
| Admin Approval Workflow | All listings reviewed by admin before going live | Done |
| Listing ID System | Unique MongoDB ID shown to restaurant and admin for tracking | Done |
| Auto-refresh | All pages auto-refresh every 5 seconds for real-time updates | Done |
| Contact Details | Restaurant address, phone, email visible on each listing | Done |
Claim & Payment System
| Feature | Description | Status |
|---|---|---|
| Claim Food | Volunteers/NGOs claim food listings with one click | Done |
| Stripe Payment | Real Stripe payment integration for paid listings | Done |
| Payment Receipt Email | Volunteer receives HTML receipt email after payment | Done |
| Restaurant Notification Email | Restaurant receives full payment details via email | Done |
| Stripe Refund | Real Stripe refund when restaurant rejects claim | Done |
| Refund Email | Volunteer receives refund confirmation email | Done |
| Restaurant Approval | Restaurant can approve or reject each claim | Done |
Acknowledgement & Completion
| Feature | Description | Status |
|---|---|---|
| Restaurant Provides | Restaurant clicks "I Have Provided the Food" button | Done |
| Volunteer Pickup | Volunteer clicks "I Have Picked Up the Food" button | Done |
| Dual Acknowledgement | Admin sees both confirmations before completing transaction | Done |
| Admin Completes | Admin marks transaction complete after both acknowledge | Done |
| Status Visibility | Each role sees role-specific status messages in real time | Done |
Notification System
Admin Panel
| Feature | Description | Status |
|---|---|---|
| Dashboard Stats | Total, pending, action needed, completed count widgets | Done |
| Filter Tabs | All / Pending / Approved / Action Needed / Completed / Rejected | Done |
| Listing ID Display | Unique MongoDB ID shown on every listing card | Done |
| Approve/Reject Listings | Admin can approve or reject any submitted listing | Done |
| Complete Transactions | Mark complete after both parties acknowledge | Done |
Contact & Support
| Feature | Description | Status |
|---|---|---|
| Contact Us Page | Formspree-powered form for all users to message admin | Done |
| Report Issue | Volunteers and restaurants report listing-specific problems | Done |
| Pre-filled Listing ID | Report form auto-fills listing ID and title from listing card | Done |
| Issue Categories | Structured predefined issue types for organized admin tracking | Done |
10-Week Build Journey
How It All Works
Food Listing Flow
Claim & Payment Flow
Acknowledgement & Completion Flow
MongoDB Data Models
REST API Endpoints
Auth Routes β /api/auth
Food Routes β /api/food
Notification Routes β /api/notifications
All 18 Tests Passing
What's Coming Next
Rating System
Volunteers rate restaurants 1β5 stars after pickup. Average rating visible on listings.
Analytics Dashboard
Admin charts: meals saved, active restaurants, transaction trends, top donors.
Subscription Plans
Free plan (3 listings/month) vs Premium (unlimited). Stripe subscription billing.
Map View
Google Maps showing nearby food listings with distance and directions.
Push Notifications
Browser push notifications alongside the existing in-app bell icon system.
Multi-language
Kannada, Hindi, Tamil support for wider reach across Indian cities.
AI Food Matching
ML-based system matching food types with NGO preferences automatically.
Recurring Listings
Restaurants set up recurring daily listings automatically without re-posting.
Technical Improvements Planned
| Improvement | Technology | Description |
|---|---|---|
| Cloud Deployment | Render + Vercel | Backend on Render, frontend on Vercel for public access |
| Cloud Database | MongoDB Atlas | Production-grade cloud database migration |
| Real-time Updates | Socket.io | WebSocket notifications replacing 5-second polling |
| Image Upload | Cloudinary | Food listing photos uploaded and stored in cloud |
| Mobile App | PWA | Install as native app on Android and iOS devices |
| Testing Suite | Jest + RTL | Unit and integration tests for all components and routes |
Phase 1 β Mission Accomplished
Phase 1 of AharaSetu has been successfully completed with a comprehensive feature set addressing the core problems of food wastage and food insecurity. The platform delivers a complete end-to-end solution from food listing to transaction completion, with real Stripe payments, automated email communications, OTP security, and full admin oversight.
AharaSetu is the only platform offering a dual-mode system (free + paid), end-to-end three-party acknowledgement, real Stripe payments with automatic refunds, and admin-gated listing approvals β all in a single unified platform built specifically for the Indian context.
Dual-Mode Platform
Free and paid listings on one unified system β no competitor offers both
Full Lifecycle Tracking
Three-party acknowledgement ensures every transaction is verified
Real Payments
Stripe integration with actual card processing and automatic refunds
Email at Every Step
Automated HTML email notifications keep all parties informed