- Santiago Buenahora (Technical Lead)
- Abhinav Suri (Product Manager)
- Nishita Jain
- Roberta Nin Feliz
- Sanjay Subramaniam
- Application for interested volunteers
- Admin application view, accept, reject capabilities
- Intro page for accepted applicants
- Team search / discovery capabilities
- Algorithmic matching / suggestions
- Team management + scheduling
- Trip preparation resources and reminders
- Email notifications
- Rating and testimonial system (for team and host)
- Admin dashboard to manage volunteer pipeline
- Interested volunteer redirected to external application from Madaktari website.
- User fills out long-form application and submits responses
- User is thanked for the submission and gets an email confirmation
- Admin configurable form
- Form responses accessible via API calls if external
- Form submission prompts an email
- FormBuilder: Drag and drop form creation
- Other Relevant Libraries / Resources
- Google Forms
- Airtable
- TypeForm: Collect typeform responses on demand in JSON format
- Fireform: Program html forms and see responses in a table using private backend library
- MailThisTo: Email API from form submissions
- FormsFree: Email form responses to admin after submission
- Offline Forms: Offline fallback for forms
- Admin can see application responses
- Admin can read application responses
- Admin can accepted and reject an application
- ? Admin can see previously accepted, or rejected applications
- ? Admin can download application responses as CSV
- Database querying for application responses
- Page population of form responses supporting dynamic questions
- Pagination of form responses for readibility
- Accept and Reject buttons and backend logic
- ? Page population of rejected or accepted responses
- ? Download button and write to CSV logic
TODO
- Static Page welcoming users to Madaktari
- ? Intro video by Madaktari clients
- ? Letter by Madaktari Clients
- ? Programmatic Page content
- ? Tutorial overlay of team search, discovery, creation capabilities
- Static Page
- Content from Madaktari clients
- Volunteer opens team discovery tool
- Volunteer sees profiles of individuals who may be potential comrades
- Volunteer can see information from profiles such as motivation, available dates, specialization, and photo
- Retrieve Entries from database: See Flask View Functions
- Pagination: See Pagination.js
- User Profile schema for the database
- Defer until we have more information from the client
- Have several varied examples of "optimal teams", "good" teams, and "bad" teams divided by specialization
- Aside from specialization and dates, what other attributes will make a difference for coordinating teams?
- Should we match teams based off of predefined team distributions, or should we account for alternative distributions. In other words, if a host requests specific specializations, is there a way we can input this preference as data to make our algorithm more intelligent or to create a posting targetting specific individuals