MVP ‐ Requirements - saayam-for-all/docs GitHub Wiki
Saayam For All: MVP Documentation
Objective
The objective of the Saayam For All MVP is to establish a globally accessible platform where users can submit help requests matched with local or remote volunteers and organizations, with a focus on Remote Support categories such as Education, Shopping, and Consultation. Key functionalities include user registration, help request submission, volunteer matching, role-based access control (RBAC), and a donation page. This MVP prioritizes usability, adhering to accessibility standards to ensure inclusivity for users with disabilities and maintaining rigorous data privacy practices.
Goals & Success Criteria
Goals:
- Provide a welcoming home page with clear calls to action, guiding users to register, donate, and read impactful success stories.
- Implement a streamlined registration process for users and volunteers.
- Enable users to submit and track help requests through a user-friendly dashboard.
- Develop a volunteer matching system tailored to handle Remote Support requests.
- Meet basic accessibility standards to accommodate users with disabilities.
Success Criteria:
- Successfully demo the product to potential donors, volunteers, and charity organizations.
- Garner funding, traction, and feedback from the target audience.
- Allow charities to sign up and offer services directly or have a database of charities for automatic matching without user intervention.
Scope
1. Home Page (Public Access):
- Showcase essential information about Saayam For All, including the vision, mission, and platform benefits.
- Prominently display a "Donate" button that links to a secure donation page.
- Clear "Register/Log In" call-to-action for quick onboarding.
- Adhere to accessibility standards, including: Readable font sizes and styles, Optimized color contrast for visibility, Intuitive navigation for first-time visitors.
2. User Registration Process:
- Accessible Sign-Up Form: Includes clearly labeled fields, easy-to-follow instructions, and keyboard accessibility.
- User Details: Basic information such as email, phone, name, location (country, city, zip, time zone).
- Basic Accessibility Compliance: User-friendly form fields, error feedback, and screen reader compatibility.
3. User Roles:
- Define user types: Beneficiary, Volunteer, Admin, Steward (matching facilitator), and Charity Organization (represented by an official), Super Admin. Note: Employees will not have a separate role, but the "employee" type will be tagged in Steward role to track KPIs.
- Role-Based Access Control (RBAC): Pages and features are dynamically shown/hidden based on user roles.
- Profile Completion Prompt: Users are prompted to complete profiles upon their first login, with an alert on the dashboard for incomplete profiles.
- Admin Controls: Admins can manage user roles, add, delete, or disable accounts for secure access.
Feature | Beneficiary | Volunteer | Steward | Admin | Super Admin | Charity Org |
---|---|---|---|---|---|---|
View Profile | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Edit Profile | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Submit Request | ✓ | - | - | ✓ | ✓ | - |
Accept Request | - | ✓ | - | ✓ | ✓ | ✓ |
Delete Request | ✓ | - | - | ✓ | ✓ | - |
Manage Roles (Beneficiary, Volunteer, Steward, Charity Org) | - | - | - | ✓ | ✓ | - |
Manage Admin | - | - | - | - | ✓ | - |
Manage Integrations/Functionality | - | - | - | ✓ | ✓ | - |
Manage Dashboard | - | - | - | ✓ | ✓ | - |
Match Requests | - | - | ✓ | ✓ | ✓ | - |
View Reports | - | - | ✓ | ✓ | ✓ | - |
Manage Users | - | - | - | ✓ | ✓ | - |
4. Use Cases for Remote Support:
Elderly Support:
- Remote Computer Assistance
- Government Agency Connections
- Ride Assistance
- Shopping Support
Counseling Support:
- College Applications (Master’s)
- Review of Statements of Purpose (SoPs)
- College Recommendations
- Suggestions for College Choices
5. Dashboard Page (Post-Login):
- My Requests Tab: A dedicated area for users to view and manage help requests.
- Help Request Creation: Users select request categories and view assigned volunteers.
- Fallback Assistance: In case of unavailability of volunteers, display an alternative organization where users can seek assistance.
6. Volunteer Matching to Categories:
Match volunteers to relevant categories based on expertise provided during registration.
7. Volunteer Matching Dashboard & Response:
- Request Matching Service: Matches volunteers based on expertise and location.
- Volunteer Notifications: Volunteers receive matching request alerts via email, SMS, and dashboard notifications.
- Accept/Deny Options: Volunteers can accept or decline requests through notifications or the dashboard.
- Volunteer Support Options: Volunteers may request internal support or delegate with comments for reasoning.
- Fallback to GPT Querying: Provide GPT-based assistance if no volunteer is available.
8. Steward Dashboard:
- Monitor and assign pending requests to volunteers as necessary.
- Request Management: Stewards can add, edit, and delete requests.
9. Admin Dashboard:
- Admins manage users and roles, adding, deleting, or disabling accounts to ensure secure access.
10. Super Admin Dashboard:
- Serves as a centralized platform for managing global configurations and settings.
- Enables advanced controls for user role assignments and permissions management.
- Supports compliance monitoring with tools for auditing and adhering to regulations like GDPR.
- Provides workflow oversight to monitor escalations and ensure resolution efficiency.
- Configures system-wide settings, including notifications, API limits, and localization preferences.
- Enhances operational efficiency, scalability, and system reliability.
11. Donation Page:
- Donation Options: Support one-time or recurring donations through the "Donate" button linking to a secure payment page.
- Accessibility Compliance: Forms for entering donation amounts and payment information are accessible and compliant.