HelpHive is a platform connecting verified elderly and differently-abled citizens with verified volunteers through proximity-based alerts and intelligent task prioritization.
- Project setup and configuration
- Firebase project initialization
- Authentication system (Google OAuth)
- User verification system
- Basic routing structure
- Elderly/Differently-abled User Dashboard
- Request creation (text/voice/photo)
- Request status tracking
- Emergency button
- Volunteer Dashboard
- Proximity-based request feed
- Request response system
- Task acceptance/rejection
- Claude API integration for request parsing
- Task prioritization algorithm
- Rating system
- Emergency call functionality
- Google Maps integration
- User verification workflow
- Volunteer verification workflow
- UI/UX improvements
- Testing and bug fixes
- React 18 - UI framework
- React Router - Navigation
- Google OAuth - Authentication
- Google Maps API - Location services
- React Speech Recognition - Voice input
- Firebase SDK - Backend services
- Firebase Authentication - User auth
- Firebase Firestore - Database
- Firebase Storage - Image storage
- Firebase Cloud Functions - Serverless functions (optional)
- Claude API - AI request processing
-
Verified Elderly/Differently-abled Citizen
- Can create help requests
- Track request status
- Emergency button access
- Rate volunteers
-
Verified Volunteer
- Individual volunteers
- Official/NGO/Local services
- View proximity-based requests
- Accept/respond to requests
- Rate users
- Request Creation: Text, voice, or photo input
- AI Processing: Claude API parses and categorizes requests
- Proximity Alerts: Location-based request matching
- Task Prioritization: AI-driven urgency assessment
- Safety Features: Emergency button, ratings, verification
{
uid: string,
email: string,
displayName: string,
userType: 'elderly' | 'differently_abled' | 'volunteer' | 'service',
verificationStatus: 'pending' | 'verified' | 'rejected',
verificationDocuments: string[],
location: {
lat: number,
lng: number,
address: string
},
rating: number,
totalRatings: number,
createdAt: timestamp,
updatedAt: timestamp
}
{
requestId: string,
userId: string,
title: string,
description: string,
category: string,
urgencyLevel: 'low' | 'medium' | 'high' | 'emergency',
status: 'open' | 'assigned' | 'in_progress' | 'completed' | 'cancelled',
location: {
lat: number,
lng: number,
address: string
},
photos: string[],
audioUrl: string,
assignedTo: string | null,
createdAt: timestamp,
updatedAt: timestamp,
completedAt: timestamp | null
}
{
responseId: string,
requestId: string,
volunteerId: string,
status: 'pending' | 'accepted' | 'rejected',
message: string,
createdAt: timestamp
}
{
ratingId: string,
fromUserId: string,
toUserId: string,
requestId: string,
rating: number,
comment: string,
createdAt: timestamp
}
- Create Firebase project at https://console.firebase.google.com
- Enable Authentication (Google provider)
- Create Firestore database
- Set up Storage bucket
- Configure security rules
- Get API keys and add to
.env
- Go to Google Cloud Console
- Create OAuth 2.0 credentials
- Add authorized redirect URIs
- Get Client ID and add to
.env
- Enable Maps JavaScript API in Google Cloud Console
- Enable Geocoding API
- Enable Places API (for address autocomplete)
- Get API key and add to
.env - Set up billing (required for Maps API)
- Get API key from Anthropic
- Add to
.env - Set up API endpoint for request processing
- Install dependencies:
npm install - Copy
.env.exampleto.envand fill in values - Start development server:
npm start - Test authentication flow
- Test Firebase connection
- Test Maps integration
- Users can only read/write their own data
- Requests are readable by verified volunteers within proximity
- Ratings are public but only creatable by involved parties
- Verification documents are private
- Never expose API keys in client-side code (use environment variables)
- Implement rate limiting for Claude API calls
- Validate all user inputs
- Sanitize data before storing in Firestore
-
Government Subsidies
- Apply for municipal/state grants
- Document social impact metrics
- Partner with social services departments
-
Company Partnerships
- Hospitals: Referral partnerships
- NGOs: Service provider partnerships
- Ride Services: Transportation integration
-
Service Fees (Future)
- Premium features for services
- Transaction fees for paid services
- Number of verified users (elderly + volunteers)
- Request completion rate
- Average response time
- User satisfaction ratings
- Number of partnerships
- Government grant applications
- Service utilization rates
- Implement robust verification system
- Emergency button with direct police connection
- Rating system to filter bad actors
- Background checks for volunteers (future)
- API rate limits (implement caching)
- Location accuracy (use multiple sources)
- Offline functionality (implement service workers)
- Week 1-2: Infrastructure & Authentication
- Week 2-3: Core User Features
- Week 3-4: AI Integration & Safety Features
- Week 4-5: Verification & Testing
- Week 5-6: Polish & Launch Preparation